以下代码仅适用于第一次单击事件。但是对于任何后续点击都没有任何反应。
<input type="submit" name="add" value="Add it" onClick="javascript:Add(); return false;">
function Add()
{
$(function(){
var dialogOpts = {
width: 880,
height: 270,
minWidth: 880,
minHeight: 270,
maxWidth: 890,
maxHeight: 300
};
$("#add").dialog(dialogOpts);
});
}
如果我从:
删除return false<input type="submit" name="add" value="Add it" onClick="javascript:Add(); return false;">
我让它适用于Firefox,但在IE8中,窗口会显示一到两秒钟,然后它就会消失(缓存清理完毕)。
我在这个网站上似乎有很多关于这个问题的例子,但我担心我对jquery应用它们太新了:(
非常感谢
答案 0 :(得分:2)
写这个来实例化你的对话:
$(function(){
$diag = $("#add");
var dialogOpts = {
width: 880,
height: 270,
minWidth: 880,
minHeight: 270,
maxWidth: 890,
maxHeight: 300,
autoOpen: false
};
$diag.dialog(dialogOpts); // This instantiates the dialog once.
//And then add this eventhandler:
$("input[name='add']").click(function(){
$diag.dialog('open');
});
});
并删除所有内联onclick
内容 - 尽可能避免使用...
答案 1 :(得分:0)
你想要删除一些代码:)“javascript:”是没有必要的
<input type="submit" name="add" value="Add it" onClick="Add();">
并且不需要dom ready部分
function Add()
{
var dialogOpts = {
width: 880,
height: 270,
minWidth: 880,
minHeight: 270,
maxWidth: 890,
maxHeight: 300
};
$("#add").dialog(dialogOpts);
}