val
函數主要用於檢索和設置表單元素的值。要獲得/設置使用text或html功能
$("#interestTypesGrid tbody tr").live("click", function (e) {
$("#SelectedInterestTypeID").val($(this).find('td:first a').text());
$.post(URLGetInterestRates, $("#FormMasterData").serialize(), function (data) { $("#pagedInterestRates").html(data); });
});
在這段代碼我假設#SelectedInterestTypeID
是一個表單元素非形式標記試的內容,如果不是你應該改變,要text
以及。
我在IE和Chrome中測試了這個working sample。
更新
樣本HTML您提供:
<tr>
<td>
<a href="/MasterData/ShowInterestTypeDetails?id=11" value="11">
<img src = "../../Content/img/icon_detail_16px.gif" alt="" />
</a>
</td>
<td>q</td>
<td>34</td>
<td>q12</td>
<td>
<a href="/MasterData/DeleteInterestType?id=11" value="11">
<img src = "../../Content/img/icon_delete_16px.gif" alt="" />
</a>
</td>
</tr>
value
不是HTML有效的屬性。如果你的目標HTML5你可以使用一個數據屬性和jQuery的的data
功能,其實它很可能是最容易提上tr
屬性:
<tr data-interestType='{"id":11}'>
然後使用數據功能,你的JavaScript:
$("#interestTypesGrid tbody tr").live("click", function (e) {
$("#SelectedInterestTypeID").val($(this).data("interestType").id);
$.post(URLGetInterestRates, $("#FormMasterData").serialize(), function (data) { $("#pagedInterestRates").html(data); });
});
另外working sample使用這種方法。
所有的標準都被詛咒,你可以使用attr jquery函數來檢索任意元素屬性的值。
如果它只適用於IE瀏覽器,則會出現嚴重錯誤。它應該只**不**在IE中工作。 – 2011-02-22 18:13:20