用 jQuery UI 替换 showModalDialog ,最好的方法是啥?

Posted

技术标签:

【中文标题】用 jQuery UI 替换 showModalDialog ,最好的方法是啥?【英文标题】:replace showModalDialog with jQuery UI , what is the best way?用 jQuery UI 替换 showModalDialog ,最好的方法是什么? 【发布时间】:2018-10-05 10:08:09 【问题描述】:

我是 javascript 和 jQuery UI 的新手。目前,我必须修复和改进以前开发人员的代码。

页面应该是这样工作的:使用 showModalDialog,将弹出一个包含表单的模式对话框。有一些值从子页面传递到父页面,也有一些值会从数据库中显示出来。简而言之,这个弹出的对话框是搜索从数据库中检索到的任何项目。

我想找到 showModalDialog 的替代方案,因为它已被弃用。我已经搜索并阅读了一些关于 jQuery UI 的信息来替换 showModalDialog。然而,在我开始之前,我想知道最好的方法是将编码中的所有相关部分更改为 jQuery UI,或者我可以只更改代码中的一些部分。哪个最好?

代码:

function openWindow(win,address,curStatus)

var page = address;
var row = line;
var result = win.showModalDialog(page, selectedMaterial, "dialogHeight:400px;dialogWidth:700px;");
if (result == 'reload')
  //do something
else if (result==true)
  //do something
else
  //do something



如果需要进一步解释,请告诉我。谢谢!

【问题讨论】:

【参考方案1】:

目前 Jquery UI 不是最好的解决方案,最好使用更强大的框架,如 ext.js 或 kendo ui,但如果你喜欢使用 jquery ui 非常简单,但据我所知它不会返回值退出时。您可以通过单击提交或退出按钮来模拟此行为,或者收听类似这样的关闭事件。

*$( "address" ).dialog(
     beforeClose: function( event, ui ) 
   );*

【讨论】:

以上是关于用 jQuery UI 替换 showModalDialog ,最好的方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

jquery用变量替换标签名称

jQuery ui 替换拖动项的内容

在 JQuery 移动 UI 中禁用哈希更改控制器并替换为主干.js

jQuery ui autocomplete 与easyUI冲突解决办法(重命名ui的autocomplete 和menu部分)

Jquery UI 自动完成。如何使用 innerHTML 在 div 中写入结果?

jquery-ui-timepicker怎么用