好的,我有一个网站,我想要一个按钮来打开这个对话框。我试图找出如何只在它打开时附加到该对话框的部分...
在该部分中存在JavaScript,其他形式的错误因此需要在关闭对话框时删除部分。
$(document).ready(function () {
$(function () {
$("#dialog_box").dialog({
autoOpen: false
});
$("#test_button").on("click", function () {
$("#dialog_box").dialog("open");
});
});
});
如何仅在对话框打开时才能附加表单...并在对话框关闭时删除表单?
<script>
$('#form_div').append('<%= render(:partial => 'payment_form')%>');
</script>
此外,我必须能够访问主页面中的实例变量。
@company, @user, @info
Page Html
<button id="test_button">Push Me</button>
<div class="main">
<div id="dialog_box" title="Payment Details">
<div id="form_div"></div>
</div>
</div>
答案 0 :(得分:1)
我认为你必须使用Dialog回调方法来控制Dialog状态:
$(document).ready(function () {
$(function () {
$("#dialog_box").dialog({
autoOpen: false,
open: function( event, ui ) {
console.log('Dialog opened');
},
close: function( event, ui ) {
console.log('Dialog closed');
}
});
$("#test_button").on("click", function () {
$("#dialog_box").dialog("open");
});
});
});
您可以在此处找到完整的方法和回调列表:http://api.jqueryui.com/dialog/
干杯!