Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.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
Jquery getJSON函数在引导模式下不工作,尽管在静态页面上工作_Jquery_Ruby On Rails_Json_Action - Fatal编程技术网

Jquery getJSON函数在引导模式下不工作,尽管在静态页面上工作

Jquery getJSON函数在引导模式下不工作,尽管在静态页面上工作,jquery,ruby-on-rails,json,action,Jquery,Ruby On Rails,Json,Action,我有一个奇怪的问题:我正在检查电子邮件是否已经被接收,哪个用户正在输入 它在简单页面中工作,但当我试图在模态上调用它时,它不工作 以下是jQuery: $('#user_email').focusout(function() { $.getJSON('http://127.0.0.1:3000/checkemail.jsonr', { email: $('#user_email').val() }, function(data) { $('#submit').attr('disa

我有一个奇怪的问题:我正在检查电子邮件是否已经被接收,哪个用户正在输入

它在简单页面中工作,但当我试图在模态上调用它时,它不工作

以下是jQuery:

 $('#user_email').focusout(function() {
  $.getJSON('http://127.0.0.1:3000/checkemail.jsonr', { email: $('#user_email').val() }, function(data) 
    { $('#submit').attr('disabled', 'disabled'); }//disable submit
   );
});
我的HTML:

        <input id="user_email" name="user[email]" size="30" type="email" value="">
        <input class="btn" id="submit" name="commit" type="submit" value="Create an account">
还添加了mimetype

   Mime::Type.register_alias "application/json", :jsonr, %w( text/x-json )
但正如我在日志中看到的那样,这一行动似乎并不需要。然而,所有相同的事情都在其他项目中起作用


有人能告诉我问题出在哪里吗?

不确定模态是如何完成的,但是您确定模态可以访问相关的jQuery函数吗,是否包括在内?通过粘贴警报(“测试”)测试jQuery focusout函数是否正在运行;或者函数中的某个内容。

如果您愿意,请投票否决这个答案,让我列出ajax ruby rails清单。 由于它在简单页面上工作,而不是在模态上工作,因此它必须是一个javascript问题

1) 确保jquery位于$(document).ready()块中。 2) 在$(“#user_email”)上测试jquery侦听器。我不喜欢alerts(),但使用console.log(“废话”)

3) 尝试一个没有jsonr响应的简单ajax请求

这就是我要说的。

祝你好运

尝试删除
http://127.0.0.1:3000
零件。您可能遇到了跨域问题。@jdoe,再次您好)它在简单页面
$.getJSON('/checkemail.jsonr'
)中工作,但在模式上不工作。@Campbell,它似乎不工作
$('#user_email')。focusout(函数(){alert('super');}
-无警报HTML表单位于何处,该文件是否有
?它位于designe/registrations/new中。我正在那里运行jQuery验证,因此它包含javascript文件。尝试了不同的变体-它们都不起作用-
$('#user_email')。单击(函数(){alert(“调用的.click()处理程序”);});
-不管怎样,jquery事件处理程序没有连接到表单元素,因此我怀疑include。无论您在将表单从“简单页面”移动到“模式页面”时做了什么,您将其从jquery函数的范围中删除了--我相信。谢谢您的回答!我发现了问题-所有这些都是因为我有很多表单,它们包含相同的输入id。我忘记了这一点)总是那些表单让您:)
   Mime::Type.register_alias "application/json", :jsonr, %w( text/x-json )