Jquery getJSON函数在引导模式下不工作,尽管在静态页面上工作
我有一个奇怪的问题:我正在检查电子邮件是否已经被接收,哪个用户正在输入 它在简单页面中工作,但当我试图在模态上调用它时,它不工作 以下是jQuery: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
$('#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 )