有关复选框的许多问题,但在此问题上没有帮助。我想在我的PartialView中选中我的复选框 FROM 我的MainView。
请在MainView上查看我的Ajax函数
$.ajax({
url: '@Url.Action("Show", "Moderator")',
data: { search: v, productName: p }
}).done(function(data) {
CloseWaitDialogue();
$('#gridContent').html(data);
$res = $(data).filter('#qFilterGrid'); //Finding this ID in my Partial View
if ($res) {
$("#qFilterGrid th").each(function() {
if ($.trim($(this).text().toString().toLowerCase()) === "{checkall}") {
$(this).text('');
$("<input/>",
{
type: "checkbox",
id: "cbSelectAll1",
value: "",
class: "selectall",
onclick: "SelectCheckBox(this);"
}).appendTo($(this));
$(this).append("<span>EnableALL</span>");
}
});
}
}).fail(function() {
alert("FAIL");
});
这是我的部分观点:
grid.Columns(
grid.Column("Sl.No", format: @<text>
<div>
<span class="sl-holder">@( item.WebGrid.Rows.IndexOf(item) + 1)</span> <input type="hidden" value="@item.Id" class="p-id"/>
</div> </text>, canSort: false),
grid.Column(
format: @<text>
@if (@item.EnableQueue)
{
<text> <input id=@( item.WebGrid.Rows.IndexOf(item) + 1) type="checkbox" value="@item.EnableQueue" checked disabled="disabled" name="ids" class="disabled-true"/></text>
}
else
{
<text><input id=@( item.WebGrid.Rows.IndexOf(item) + 1) type="checkbox" value="@item.EnableQueue" name="ids" class="dis"/></text>
}
</text>,
header: "{checkall}", style: "width"
),
grid.Column("Project", format: @<text> <span class="display-mode">@item.Project </span> </text>),
grid.Column("Version", format: @<text> <span class="display-mode">@item.Version</span></text>),
grid.Column("Mode", format: @<text><span class="display-mode lblMode">@item.Mode</span><label class="edit-mode lblMode"></label></text>, canSort: false),
grid.Column("Priority", "Priority", format: @<text>
<span class="display-mode">
<label class="lblPriority">@item.Priority</label>
</span> </text>, canSort: false))
如您所见,我希望从主视图中选中局部视图中的复选框。
我的某些尝试无效。
尝试1
$("#cbSelectAll1").on("click", function () {
debugger;
var ischecked = this.checked;
$('#qFilterGrid tr').each(function () {
if ($(this)[0].style.cssText === "display: table-row;" || $(this)[0].style.cssText == "") {
$(this).find("input:checkbox").each(function () {
if (this.disabled != true) {
this.checked = ischecked;
}
});
}
});
});
尝试2
function SelectCheckBox(obj) {
var c = new Array();
c = document.getElementsByTagName('input');
for (var i = 0; i < c.length; i++) {
if (c[i].type == 'checkbox') {
c[i].checked = obj.checked;
}
}
}
我尝试了更多,但没有帮助。
我应该在SelectCheckBox();
函数中写些什么?谢谢。