动态创建多个Jquery UI模态对话框,php
使用jqueryui“dialog”小部件,我试图动态创建多个模式窗口 在一个php循环中,我动态地创建将触发模态打开的按钮,以及作为模态窗口的div。在同一个循环中,我正在做一个echo并编写javascript来处理模式窗口。我的问题是,我不知道如何准确地编写javascript。目前,我没有得到任何我的模态工作。我应该创建一个函数并在每次循环迭代中调用它,还是应该在每次迭代中发布整个document.ready例程动态创建多个Jquery UI模态对话框,php,php,jquery-ui,jquery-ui-dialog,Php,Jquery Ui,Jquery Ui Dialog,使用jqueryui“dialog”小部件,我试图动态创建多个模式窗口 在一个php循环中,我动态地创建将触发模态打开的按钮,以及作为模态窗口的div。在同一个循环中,我正在做一个echo并编写javascript来处理模式窗口。我的问题是,我不知道如何准确地编写javascript。目前,我没有得到任何我的模态工作。我应该创建一个函数并在每次循环迭代中调用它,还是应该在每次迭代中发布整个document.ready例程 <script type="text/javascript"
<script type="text/javascript">
function uiready(a){
$( "#" + a ).dialog({
autoOpen: false,
height: 650,
width: 625,
modal: true
});
$( "#Button" + a )
.click(function() {
$( "#" + a ).dialog( "open" );
});
};
</script>
<?php
//This area should build details buttons if there is a program with an amount greater than $0
for ($i=1; $i<17; $i++){
$ID= $_POST["textfield" . $i];
if ($ID!=""){
echo '<script type="text/javascript">
uiready(' . $i . ');
</script>';
//build a button with the ID equal the post value
echo "<input type=\"button\" value=\" $ID \" id=\"Button" . $i . "\" class=\"btnmargin\" />";
//next build the actual div
echo '<div class="printable' . $i . '" id="' . $i . '">
<table cellspacing="0" cellpadding="10" border="2px">
//for the sake of space I have not included the entire table markup
</table>
</div>';
}
}
?>
功能uiready(a){
$(“#”+a).对话框({
自动打开:错误,
身高:650,
宽度:625,
莫代尔:对
});
$(#按钮+a)
。单击(函数(){
$(“#“+a).对话框(“打开”);
});
};
正如我所看到的,您不需要将JavaScript与PHP混合在一起就可以做您想要做的事情。您只需要为“printable$1”div指定相同的类名(例如“printable”),然后使用JS/jQuery完成其余部分。在标记后添加如下内容(未经测试):
$('.printable')。每个(函数(){
var对话框=$(此);
对话({
自动打开:错误,
身高:650,
宽度:625,
莫代尔:对
});
dialog.prev()。单击(函数(){
dialog.dialog(“打开”);
});
}
正如我所看到的,你不需要将JavaScript和PHP混合在一起来做你想做的事情。你只需要给“printable$1”div赋予相同的类名(例如“printable”),然后用JS/jQuery完成其余部分。在标记后添加类似的内容(未测试):
$('.printable')。每个(函数(){
var对话框=$(此);
对话({
自动打开:错误,
身高:650,
宽度:625,
莫代尔:对
});
dialog.prev()。单击(函数(){
dialog.dialog(“打开”);
});
}
我无法使用jquery ui使多个模态正常工作。相反,我使用并遵循了我无法使用jquery ui使多个模态正常工作。相反,我使用并遵循了不幸的是,这不起作用。谢谢你的帮助。我只是将其全部废弃,不幸的是,这不起作用。谢谢你的帮助但他帮了我,我只是把它全部扔掉,用了
<script type="text/javascript">
$('.printable').each(function() {
var dialog = $(this);
dialog.dialog({
autoOpen: false,
height: 650,
width: 625,
modal: true
});
dialog.prev().click(function() {
dialog.dialog("open");
});
}
</script>