我正在尝试使用Jquery加载两个模态对话框。它们都使用ajax加载单独的页面。唯一的问题是只有其中一个有效。
我认为我需要简化我的代码但不确定如何。
<script type="text/javascript">
$(document).ready(function(){
var dialogOpts = {
modal: true,
bgiframe: true,
autoOpen: false,
height: 400,
width: 550,
draggable: true,
resizeable: true,
title: "Your campaign rates",
};
$("#ratesbox").dialog(dialogOpts); //end dialog
$('#ratesbutton').click(
function() {
$("#ratesbox").load("rate_sheet/index.php", [], function(){
$("#ratesbox").dialog("open");
}
);
return false;
}
);
});
</script>
<script type="text/javascript">
$(document).ready(function(){
var dialogOptsPass = {
modal: true,
bgiframe: true,
autoOpen: false,
height: 400,
width: 550,
draggable: true,
resizeable: true,
title: "Change your pasword",
};
$("#passwordbox").dialog(dialogOptsPass); //end dialog
$('#passwordbutton').click(
function() {
$("#passwordbox").load("change_password/index.php", [], function(){
$("#passwordbox").dialog("open");
}
);
return false;
}
);
});
</script>
将两个脚本组合起来是否可行????
答案 0 :(得分:3)
您可以稍微简化一下脚本,如下所示:
$(function(){
var dialogOpts = {
modal: true,
bgiframe: true,
autoOpen: false,
height: 400,
width: 550,
draggable: true,
resizeable: true,
title: "Your campaign rates"
};
$("#ratesbox, #passwordbox").dialog(dialogOpts);
$("#passwordbox").dialog("option", "title", "Change your pasword");
//or...
//$("#ratesbox").dialog(dialogOpts);
//$("#passwordbox").dialog($.extend(dialogOpts, { title: "Change your pasword" }));
$('#ratesbutton').click(function() {
$("#ratesbox").load("rate_sheet/index.php", function(){
$("#ratesbox").dialog("open");
});
return false;
});
$('#passwordbutton').click(function() {
$("#passwordbox").load("change_password/index.php", function(){
$("#passwordbox").dialog("open");
});
return false;
});
});
...但我没有看到你的代码有任何特殊问题(除了会导致 的问题),它很可能与你的标记有关为什么不是工作。还要确保在对象声明中删除尾随逗号,你当前有title: "Your campaign rates",
...那里没有悬空的逗号,特别是IE会吹一个垫圈,吃你的猫并偷你的车。