Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 错误:TypeError:$(…)。对话框不是函数_Javascript_Jquery_Jquery Ui Dialog - Fatal编程技术网

Javascript 错误:TypeError:$(…)。对话框不是函数

Javascript 错误:TypeError:$(…)。对话框不是函数,javascript,jquery,jquery-ui-dialog,Javascript,Jquery,Jquery Ui Dialog,我在使用对话框作为基本功能时遇到了一个问题。以下是我的jQuery源导入: <script type="text/javascript" src="scripts/jquery-1.9.1.js"></script> <script type="text/javascript" src="scripts/jquery-ui-1.11.1.js"></script> <script type="text/javascript" src="scr

我在使用对话框作为基本功能时遇到了一个问题。以下是我的jQuery源导入:

<script type="text/javascript" src="scripts/jquery-1.9.1.js"></script>
<script type="text/javascript" src="scripts/jquery-ui-1.11.1.js"></script>
<script type="text/javascript" src="scripts/json.debug.js"></script>

Html:

打开对话框
我是一个对话者
$(“#开场白”)。单击(函数(){
$(“#dialog1”).dialog('open');
});
从周围的帖子看,这似乎是一个图书馆导入问题。我下载了jQueryUI核心、小部件、鼠标和位置依赖项


有什么想法吗?

请务必插入jQuery UI的完整版本。您还应首先初始化对话框:

$(函数(){
$(“#对话框1”)。对话框({
自动打开:错误
});
$(“#开场白”)。单击(函数(){
$(“#dialog1”).dialog('open');
});
});

打开对话框

我是一个对话框
如果您从
\u Layout.cshtml
页面注释掉以下代码,模式弹出窗口将开始工作:

    </footer>

    @*@Scripts.Render("~/bundles/jquery")*@
    @RenderSection("scripts", required: false)
    </body>
</html>

@*@Scripts.Render(“~/bundles/jquery”)*@
@RenderSection(“脚本”,必需:false)

如果出于某种原因加载了两个版本的
jQuery
(不推荐),则从第二个版本调用
$。noConflict(true)
将全局范围的
jQuery
变量返回到第一个版本的变量

有时,较旧版本(或不稳定版本)的
JQuery
文件可能会出现问题

解决方案使用
$.noConflict()


$.noConflict();
jQuery(文档).ready(函数($){
$(“#开场白”)。单击(函数(){
$(“#dialog1”).dialog('open');
});
});
//使用其他库的$的代码可以在这里找到。

我刚刚体验了这一行:

$('<div id="editor" />').dialogelfinder({
$('').dialogelfinder({
我收到错误“dialogelfinder不是函数”,因为另一个组件在加载较新版本的JQuery(1.7.2)后插入调用以加载较旧版本的JQuery


我一注释掉第二次加载,错误就消失了。

以下是解决此问题所需的脚本的完整列表。 (确保文件存在于给定的文件路径)


还可以在_Layout.cshtml中包含以下css链接,以获得时尚的弹出窗口

<link rel="stylesheet" type="text/css" href="../../Content/themes/base/jquery-ui.css" />

我有一个类似的问题,在我的例子中,问题是不同的(我使用的是Django模板)

JS的顺序不正确(我知道这是您检查的第一件事,但我几乎可以肯定不是这样,但事实确实如此)。调用对话框的JS是在调用jqueryUI库之前调用的


我正在使用Django,所以我继承了一个模板,并使用{super.block}将代码从块继承到模板在解决问题的块的末尾。调用对话框的js是在Django的admin.py的媒体类中声明的。我花了一个多小时来解决它。希望这对其他人有所帮助。

将jQueryUI更改为版本1.11.4,并确保不会添加两次jQuery。

使用文档就绪处理程序怎么样?我想脚本必须在初始化DIV之后?@RajaprabhuAravindasamy不会有任何区别,因为脚本在button元素之后。在任何情况下,它都不会抛出错误。@Maged您也下载了对话框依赖项吗?@Juhana没有对话框依赖项。如果删除它,则会出现另一个错误“TypeError:this.element.prop不是函数this.options.disabled=!!this.element.prop(“disabled”);“@Maged尝试从jQuery CDN加载最新版本的jQuery和jQuery UI,我确信问题出在你的jQuery文件上。正如你所看到的,我的演示工作正常。将jQuery更改为1.11.1版我工作正常。这肯定是一个库问题。已解决。有人能详细说明原因吗?我的ViewPage上有这个@Scripts.Render(~/bundles/jQuery”)(不是布局,但布局也有此代码)当我删除它时,我的.js文件终于可以工作了,谢谢你提供的信息…我和我的同事们都在搞乱JQuery,我想他添加了这一部分,因为他没有做正确的事情…为什么我不知道我是js N00B这是我问题的原因,最后我删除了一个版本,这个解决方案确实给了我提示。
$('<div id="editor" />').dialogelfinder({
   <script src="@Url.Content("~/Scripts/jquery-1.8.2.js")" type="text/javascript">
    </script>
    <script src="@Url.Content("~/Scripts/jquery-ui-1.8.24.js")" type="text/javascript">
    </script>
    <script src="@Url.Content("~/Scripts/jquery.validate.js")" type="text/javascript">
    </script>
    <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")" type="text/javascript">
    </script>
    <script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.js")" type="text/javascript">
    </script>
<link rel="stylesheet" type="text/css" href="../../Content/themes/base/jquery-ui.css" />