我有代码:
$(function() {
$("#dialog").dialog({
bgiframe: true,
autoOpen: false,
height: 300,
modal: true,
buttons: {
Cancel: function() {
$(this).dialog('close');
}
},
close: function() {
allFields.val('').removeClass('ui-state-error');
}
});
$("input[name=edit]").click(function() {
alert(1);
$("#dialog input[@id=ItemId]").val($("ItemId"));
alert(2);
$("#dialog input[@id=CatId]").val($("CatId"));
$("#dialog input[@id=UnitId]").val($("UnitId"));
$("#dialog input[@id=SaleOffId]").val($("SaleOffId"));
$("#dialog input[@id=ItemCode]").val($("ItemCode"));
$("#dialog input[@id=ItemName]").val($("ItemName"));
$("#dialog input[@id=UnitCost]").val($("UnitCost"));
$('#dialog').dialog('open');
})
.hover(
function() {
$(this).addClass("ui-state-hover");
},
function() {
$(this).removeClass("ui-state-hover");
}
).mousedown(function() {
$(this).addClass("ui-state-active");
})
.mouseup(function() {
$(this).removeClass("ui-state-active");
});
});
我想为Form支持的对话框设置值。我写了函数$(“input [name = edit]”)。点击(function()将值设置为对话框每个按钮编辑都是点击但是错了。我不知道我在哪里错了。请帮助我
由于
答案 0 :(得分:1)
如果您使用的是jQuery 1.3,请先从属性选择器中删除@
sings。
$("#dialog input[@id=CatId]")
应该成为
$("#dialog input[id=CatId]")
来自jQuery docs的引用:
注意:在jQuery 1.3 [@attr]样式选择器被删除(它们之前在jQuery 1.2中被弃用)。只需从选择器中删除“@”符号,即可使它们再次工作。
更好的改进是改变
$("#dialog input[id=CatId]")
到
$("#CatId")
因为ID必须是唯一的。