Jquery UI:对话框不是函数错误
例如,我通过Jquery UI:对话框不是函数错误,jquery,jquery-ui,jquery-ui-dialog,Jquery,Jquery Ui,Jquery Ui Dialog,例如,我通过newDialog(“这是标题!”,“这是我的内容”)调用它 function newDialog(mytitle, mycontent){ var $dialog = $('<div id="mydialog"></div>') .html(mycontent) .dialog({ autoOpen: false, modal: false, tit
newDialog(“这是标题!”,“这是我的内容”)调用它代码>
function newDialog(mytitle, mycontent){
var $dialog = $('<div id="mydialog"></div>')
.html(mycontent)
.dialog({
autoOpen: false,
modal: false,
title: mytitle
});
$dialog.dialog('open');
return false
}
对于更新的问题:当这样称呼它时,您仍然存在与bfeore相同的问题:
$(document).click(newDialog);
它在没有任何参数的情况下被调用,这意味着.html()
仍在传递未定义的。您需要传递参数,例如:
$(document).click(function() { newDialog("Title", "Content"); });
或者为参数提供一些默认值,例如:
function newDialog(mytitle, mycontent){
mytitle = mytitle || "Default Title";
mycontent = mycontent || "Default Content";
原问题:
您的变量名称已关闭,这是:
.html(mycontent)
应该是:
.html(mycon)
目前,由于未定义,它正在调用.html()
以获取返回的字符串,而不是设置html。标题也是如此,您的参数是mytit
,您尝试使用的变量是mytitle
,,用于更新问题:当这样调用它时,您仍然存在与bfeore相同的问题:
$(document).click(newDialog);
它在没有任何参数的情况下被调用,这意味着.html()
仍在传递未定义的。您需要传递参数,例如:
$(document).click(function() { newDialog("Title", "Content"); });
或者为参数提供一些默认值,例如:
function newDialog(mytitle, mycontent){
mytitle = mytitle || "Default Title";
mycontent = mycontent || "Default Content";
原问题:
您的变量名称已关闭,这是:
.html(mycontent)
应该是:
.html(mycon)
目前,由于未定义,它正在调用.html()
以获取返回的字符串,而不是设置html。标题也是如此,您的参数是mytit
,您尝试使用的变量是mytitle
检查对话框
插件是否正确安装。不应该有任何其他原因导致这不起作用
请允许我借此机会无耻地自我推销,为您提供另一种选择。我编写了一个jQuery插件,它可以完成您想要做的事情。如果您感兴趣,它是开源的:检查对话框
插件是否正确安装。不应该有任何其他原因导致这不起作用
请允许我借此机会无耻地自我推销,为您提供另一种选择。我编写了一个jQuery插件,它可以完成您想要做的事情。如果您感兴趣,它是开源的:不幸的是,我希望这是一个简单的变量命名问题。我确保使用了相同的变量,并且出现了相同的错误。@Kim-在这种情况下,您仍然没有传递任何参数,这意味着它仍然未定义,导致了相同的错误,您必须实际传递mycontent
参数,或者给它一个默认值……否则它将是未定义的
。我很感激你的否决票……在你纠正了一个方面之后,你拒绝了答案,但你仍然有同样的问题,你把未定义的传递给.html(var)
。叹气。我写了那个快速的例子,但写得不好。这就是为什么你在解决错误的问题。我的错误,修复了原始示例代码。然而,错误仍然接踵而至。我不知道为什么jquery-ui.js几乎没有加载,但firebug显示它已经加载了。@Kim-你看过我更新的答案了吗?这是同样的问题,传递给.html(var)
的变量是未定义的
,即使在您当前的问题中也是如此。另外,当你投反对票有理由时,错误的问题(当答案修正该问题时)并不是一个真正有效的理由,并且会让人们在将来拒绝回答你的问题:)我投反对票是因为你陈述了显而易见的问题,而不是真正解决了预期的问题。然而,这是一个写得不好的例子,所以我明白为什么你会生气,因为你确实为这个写得不好的例子提供了一个正确的解决方案。最后,什么也解决不了。无论如何,我已经投了赞成票,但不会像现在这样接受这个答案。不幸的是,我希望这是一个简单的var命名问题。我确保使用了相同的变量,并且出现了相同的错误。@Kim-在这种情况下,您仍然没有传递任何参数,这意味着它仍然未定义,导致了相同的错误,您必须实际传递mycontent
参数,或者给它一个默认值……否则它将是未定义的
。我很感激你的否决票……在你纠正了一个方面之后,你拒绝了答案,但你仍然有同样的问题,你把未定义的传递给.html(var)
。叹气。我写了那个快速的例子,但写得不好。这就是为什么你在解决错误的问题。我的错误,修复了原始示例代码。然而,错误仍然接踵而至。我不知道为什么jquery-ui.js几乎没有加载,但firebug显示它已经加载了。@Kim-你看过我更新的答案了吗?这是同样的问题,传递给.html(var)
的变量是未定义的
,即使在您当前的问题中也是如此。另外,当你投反对票有理由时,错误的问题(当答案修正该问题时)并不是一个真正有效的理由,并且会让人们在将来拒绝回答你的问题:)我投反对票是因为你陈述了显而易见的问题,而不是真正解决了预期的问题。然而,这是一个写得不好的例子,所以我明白为什么你会生气,因为你确实为这个写得不好的例子提供了一个正确的解决方案。最后,什么也解决不了。无论如何,我已经投了赞成票,但我不会接受现在的答案。你知道,我总是乐于接受更好的解决方案。谢谢你的建议,我会看看的。你是对的,不应该有任何其他原因导致这不起作用,是的,不是代码,而是运行在另一个应用程序上的javascript,应用程序本身导致了问题。在其他地方测试了相同的javascript,运行良好!你知道我总是乐于接受更好的解决方案。谢谢你的建议,我会看看的。你是对的,不应该有任何其他原因导致这不起作用,是的,不是代码,而是运行在另一个应用程序上的javascript,应用程序本身导致了问题。在其他地方测试了相同的javascript,运行良好!