我有這樣的代碼在我看來:
@foreach (WebStill.Rola r in Model.Role) {
jQuery代碼在Firefox和Opera,但不是在Chrome和IE - 不讀複選框值正確
@Html.CheckBoxFor(p => r.Selektovana, new { @RolaID = r.RolaID, @class="cbRadnikRole",data_id=r.RolaID }); @r.Naziv
}
與這個jQuery:
$(document).ready(function() {
$(".cbRadnikRole").change(function() {
if ($(".cbRadnikRole:checked").data('id') == 2) {
$('#ulOrgJedinice').show();
}
else {
$('#ulOrgJedinice').hide();
$('#ulOrgJedinice').find("input").attr('checked', false);
}
});
$(".cbRadnikRole").change();
});
這適用於Opera和Firefox,但IE和Chrome不能正確讀取數據ID。 我有類似的代碼在其他視圖中,但我使用this
insted cbRadnikRole:checked
,我不能在這裏使用,因爲我需要在頁面加載時觸發它。
有什麼建議嗎?
呈現的HTML:
<input class="cbRadnikRole" data-id="1" data-val="true" data-val-required="The Selektovana field is required." id="r_Selektovana" name="r.Selektovana" type="checkbox" value="true" /><input name="r.Selektovana" type="hidden" value="false" />Administrator <br />
<input class="cbRadnikRole" data-id="2" id="r_Selektovana" name="r.Selektovana" type="checkbox" value="true" /><input name="r.Selektovana" type="hidden" value="false" />Serviser <br />
<input class="cbRadnikRole" data-id="3" id="r_Selektovana" name="r.Selektovana" type="checkbox" value="true" /><input name="r.Selektovana" type="hidden" value="false" />Supervizor <br />
<input class="cbRadnikRole" data-id="4" id="r_Selektovana" name="r.Selektovana" type="checkbox" value="true" /><input name="r.Selektovana" type="hidden" value="false" />Vozač <br />
<input class="cbRadnikRole" data-id="5" id="r_Selektovana" name="r.Selektovana" type="checkbox" value="true" /><input name="r.Selektovana" type="hidden" value="false" />CHIEF supervizor <br />
<input class="cbRadnikRole" data-id="6" id="r_Selektovana" name="r.Selektovana" type="checkbox" value="true" /><input name="r.Selektovana" type="hidden" value="false" />Operater <br />
什麼實際的HTML根通過該代碼評論看起來像?我對ASP.NET不熟悉,但是代碼中的data_id成爲HTML中的數據ID對我來說似乎有點奇怪。 –
@Anthony Grist,它是如何工作的,' - '不能被使用。 – gMailMan