簡體   English   中英

jQuery返回[object Object]

[英]jquery returns [object Object]

關於我現在已經處理很長時間的問題,我有一個小問題:我有一個HTML,其中顯示了存儲在h2db中的項目列表。 這些項目正確顯示。

<tr th:each="item : ${list}">
  <td th:text="${item.getActualcost()}" id="actualcost">Actual Cost</td>
</tr>

我現在想在此列表中添加另一列,以顯示進度條。

我將此代碼添加到HTML部分:

<div class="container">
  <div class="col-md-4">
    <div class="progress">
          <div id="progressPlaceholder"></div>
    </div>

腳本部分如下所示:

<script>
    var rank=$('actualcost'),place=4;
    var progress = '<div class="progress-bar" role="progressbar" aria-valuenow="'+rank+'" aria-valuemin="0" aria-valuemax="100" style="width: '+rank+'%;"><span class="show" id="totalUsers">Ranked '+place+' of '+rank+'</span></div>';
    $('#progressPlaceholder').empty().append(progress);
</script>

問題是,進度條沒有正確填寫。 因此,我嘗試通過添加“ + rank +”來找出其價值。 不幸的是,我只打印出[object Object]。 有人可以幫我解決這個問題嗎? 該值應為int。

排名是一個對象。

console.log(rank) 

應該給你對象,然后使用適當的密鑰。 它可能看起來像:

rank['value']//just an example

當您使用jQuery獲得一個元素時,您將獲得一個jQuery集合,它又是一個對象。

var rank = $('actualcost')

請注意,上面假設您有一個類似<actualcost></actualcost>的元素,您可能沒有。

即使找不到元素,只需調用$()返回一個對象。

對象字符串表示始終是[object Object]

當您連接對象和字符串時,您將獲得對象字符串表示形式,即...等待它...始終[object Object]

var str = 'something something' + $('actualcost');

// str === 'something something[object Object]'

這正是代碼中發生的情況

var rank=$('actualcost'),place=4;
var progress = '<div class="progress-bar" role="progressbar" aria-valuenow="'+rank+' ....

你可能想要

var rank = $('#actualcost').text() ,place=4;

取決於HTML的實際外觀(我不知道Thymeleaf)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM