我使用jquery ui对话框作为提示。 “提示”必须有按钮,“确定”和“取消”。这里的问题是,当触发.dialog(“close”)时,它会在对话框中提取输入字段值,我唯一的验证是输入字段的长度必须大于0个字符。这意味着即使您键入内容并按取消,提示中的文本也将被提交。我的想法是找出按下了什么按钮......任何人都知道这个解决方案吗?
我当前的活动代码:
$("#addBusinessarea").click(function(){
createPrompt("Add new business area", "Business area name:");
$( "#prompt" ).bind( "dialogclose", function(event, ui) {
if($("#promptValue").val().length > 0){
// Add business area
}
});
});
答案 0 :(得分:1)
正确解决更改jQuery UI对话框定义按钮的方式。它看起来像这样(注意你可以为不同的按钮设置不同的点击处理程序):
$("#modal").dialog({
buttons: {
Yes: {
text: 'Yeeees!',
click: function() {
alert('I clicked yes!');
}
},
No: {
text: 'Hell no!',
click: function() {
alert('I clicked no!');
}
}
}
})
答案 1 :(得分:1)
老问题,但是这个问题出现了,我在jQuery UI Dialog buttons
的帮助下找到了正确答案 event.target
是您的按钮。
$( "#prompt" ).bind( "dialogclose", function(event, ui) {
if ($(event.target).text() != "Cancel") {
if($("#promptValue").val().length > 0){
// Add business area
}
}
});