我有每個頁面在一個單獨的細胞上的大量的複選框,我需要找回所有的有過,因爲原來的改變了他們的價值的複選框。jQuery的獲得所有改變複選框
我存儲被稱爲「數據原始值」中包含的複選框跨度屬性的初始值,跨度是由asp.net加入時,我添加的屬性的屬性集合。
void Grid_ItemDataBound(object sender, GridItemEventArgs e)
{
var checkBoxControls = e.Item.Controls.All().OfType<CheckBox>();
foreach (var checkBox in checkBoxControls)
{
checkBox.Attributes["data-original-value"] = checkBox.Checked.ToString();
}
}
輸出的HTML看起來像下面這樣:
<td>
<span data-original-value="True">
<input id="ctl00_MainContent_ControlLandMatrixControl_grid_ctl00_ctl04_ctl01" type="checkbox" checked="checked" name="ctl00$MainContent$ControlLandMatrixControl$grid$ctl00$ctl04$ctl01">
</span>
</td>
我使用下面的jQuery代碼,試圖找出所有已更改的checkbvoxes的,但它似乎甚至將返回所有複選框那些沒有改變的。 ():(this).checked!= $(this).parent()。attr(「data-original-value」); });
我相信我的思念與比較的東西,但我不能完全肯定的JavaScript/jQuery的心不是我的fortay。
例子我不是jQuery的1.6,所以我認爲我可以改用.attr? –
不,這不起作用,請參閱我的編輯 –