首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery对话框引发错误

jQuery对话框引发错误
EN

Stack Overflow用户
提问于 2010-10-17 14:41:56
回答 1查看 1.2K关注 0票数 1

我创建了两个插件(A和B),其中插件B依赖于插件A。

在插件A中,我使用jQuery用户界面对话框进行用户交互,这很好。

依赖性:插件A是一个文件浏览器。单击按钮将打开一个对话框窗口,用户可以在该窗口中选择与wordpress post相关的文件。插件A加载使用对话框所需的所有JS。

现在,我尝试在插件B中使用Dialog框,得到一个错误:

代码语言:javascript
复制
(this.uiDialogTitlebarCloseText = c("<span/>")).addClass("ui-icon ui-icon-closethick").text(m.closeText).appendTo is not a function

插件B

我正在用非常简单的代码进行测试:

代码语言:javascript
复制
// Javascript code from custom_plugin.js
jQuery(document).ready(function() {
  jQuery('#dialog').dialog();
});  

// Code from my custom_plugin.php
<div class="icon32" id="icon-tools"><br></div>
<h2>Gallery manager</h2>

<div id="poststuff" class="metabox-holder">
  <div id="post-body">
    <div id="post-body-content">
      <div id="dialog" title="File browser"> This is a dialog.</div>                               
    </div>
  </div>       
</div>

我不知道我为什么会犯这个错误。对我如何解决这个问题有什么建议吗?

插件A

这是插件A中使用的codeI。我在没有与插件A.The脚本交互的情况下得到了上面的错误,因为插件A只是正常加载。

代码语言:javascript
复制
  jQuery("#fileBrowser").dialog({
        title: "File browser",
        modal: true,
        autoOpen: false,
        height: 700,
        width: 800,
        open: function() {
          jQuery("#fileBrowser").load("../wp-content/plugins/wp-filebrowser/fileBrowser.php", function() {

            // Clear input / feedback text when entering new folder name
            jQuery('#newDirDialog input[type=text]').focus(function() {
              jQuery(this).val('');
              jQuery('.newDirFedback').fadeOut(function(){ jQuery(this).empty(); });
            });

            // Initialize create new dir dialog window
              jQuery("#newDirDialog").dialog({ 
                autoOpen: false, modal: true, title: "New dir"
              });
          });
        }
      }
  ); 

  //Open dialog box on click from WP admin         
  jQuery('.addImage').click(function() {
    imageUrlInputBox = jQuery(this).siblings(":text");
    imagePreviewLink = jQuery(this).siblings("a");
    jQuery("#fileBrowser").dialog("open");
  });
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-10-17 16:18:18

我敢打赌问题是m.closeTextundefined。如果是这样的话,.text()函数可能会认为您希望它返回jQuery对象的文本内容,而不是设置它。

编辑--这仍然是我的猜测,为什么jQuery UI对话框中的代码会阻塞,但是这种情况是如何发生的,对我来说完全是个谜。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3953658

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档