<script>
//For the rooms
$(document).ready(function () {
var tpropval = $('input[name=Typeofproperty]:checked').val()
if (tpropval != 'Plot' || tpropval != 'Studio Appartment') {
$('#chkroomdetails').show();
}
else {
$('#chkroomdetails').hide();
}
})
<div id="chkroomdetails" class="roomdetails">
<h5>* Room Details :</h5>
<input type="checkbox" class="roomdetails" name="Roomdetails" id="1bed" value="1BHK" />1 BHK
<input type="checkbox" class="roomdetails" name="Roomdetails" id="2bed" value="2BHK" />2 BHK
<input type="checkbox" class="roomdetails" name="Roomdetails" id="3bed" value="3BHK" />3 BHK
<input type="checkbox" class="roomdetails" name="Roomdetails" id="4bed" value="4BHK" />4 BHK
<input type="checkbox" class="roomdetails" name="Roomdetails" id="5bed" value="5BHK" />5 BHK
@Html.ValidationMessageFor(model => model.Roomdetails)
</div>
<script type="text/javascript">
$(document).ready(function () {
var arr = $("#hiddenroomdetails").val().split(", ");
$('input[type=checkbox]').each(function () {
if ($.inArray($(this).val(), arr) >= 0) {
$(this).attr("checked", true);
}
});
});
我有两个公寓和房子的单选按钮。名为“hiddenroomdetails”的属性是该模型的属性,该属性包含2BHK和3BHK等房屋类型的房间细节。在db中,它们以逗号分隔(“,”)存储。在检索这个jquery的细节时,我没有在编辑页面上勾选复选框。
答案 0 :(得分:2)
而不是$(this).attr("checked", true);
使用$(this).prop("checked", true);
或使用$(this).attr("checked", "checked");
编辑后,您的完整jquery代码应该是:
$(document).ready(function () {
var tpropval = $('input[name=Typeofproperty]:checked').val()
if (tpropval != 'Plot' || tpropval != 'Studio Appartment') {
var arr = $("#hiddenroomdetails").val().split(", ");
$('input[type=checkbox]').each(function () {
if ($.inArray($(this).val(), arr) > -1) {
$(this).prop("checked", true);
}
});
$('#chkroomdetails').show();
}
else {
$('#chkroomdetails').hide();
}
});
答案 1 :(得分:0)
试试这个:
$(this).attr("checked", "checked");