Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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调用submit,rails 3中出现问题_Jquery_Ruby On Rails 3 - Fatal编程技术网

试图让jquery调用submit,rails 3中出现问题

试图让jquery调用submit,rails 3中出现问题,jquery,ruby-on-rails-3,Jquery,Ruby On Rails 3,我有一个指向form helper的链接,其id为: <%= link_to "NEXT", next_wizard_path, :method => :put, :id => 'my-link-check' %> 虽然我不知道,但在我们的视图remote=>中,这是否使form_为真?我怀疑这还不止于此 我还尝试将link_to方法设置为put方法,这确实在控制器中调用了Update操作,但它没有传递任何信息,因此没有保存任何表单更改…这就是为什么我认为通过java

我有一个指向form helper的链接,其id为:

<%=  link_to "NEXT", next_wizard_path, :method => :put, :id => 'my-link-check' %>
虽然我不知道,但在我们的视图remote=>中,这是否使form_为真?我怀疑这还不止于此


我还尝试将link_to方法设置为put方法,这确实在控制器中调用了Update操作,但它没有传递任何信息,因此没有保存任何表单更改…这就是为什么我认为通过javascript调用submit操作是一个好的解决方案,显然我错了。

我怀疑jQuery
submit
只对jQuery对象有效,所以它应该是这样的:

$(document).ready(function() {
    $('#my-link-check').click(function(event){
    var form = $("#edit_put");
    if(form!=null)
        $(form).submit();
    });
}); 

我怀疑jQuery
submit
只对jQuery对象有效,所以它应该是这样的:

$(document).ready(function() {
    $('#my-link-check').click(function(event){
    var form = $("#edit_put");
    if(form!=null)
        $(form).submit();
    });
}); 

为什么要注释掉
event.preventDefault()行?带有
my link check
id的链接是否指向实际地址

看起来浏览器刚刚更改(或重新加载)页面,脚本执行已终止。有了断点,一切都好了


尝试取消注释
event.preventDefault()
或put
返回false
表单提交()之后

为什么要注释掉
event.preventDefault()行?带有
my link check
id的链接是否指向实际地址

看起来浏览器刚刚更改(或重新加载)页面,脚本执行已终止。有了断点,一切都好了


尝试取消注释
event.preventDefault()
或put
返回false
表单提交()之后

既然您正在使用jQuery,为什么不在这里使用它:
var form=document.getElementById(“edit_put”)。您可以编写:
var form=$(“#编辑#put”)var form=document.getElementById(“edit_put”)。您可以编写:
var form=$(“#编辑#put”)ok尝试过了,仍然没有骰子。它非常奇怪,运行良好,没有抛出我能看到的错误…并且在var表单上放置断点时提交,我一路通过.submit调用.apply,在jquery的某个深处。有没有可能
#我的链接检查
name=“submit”
?如果是这样的话,给它一个不同的名字。由于某种原因,如果我尝试给一个id以形式_,它总是用我看到的edit_put重命名。我不确定crowjonah您所说的“我的链接检查有name=“submit”是什么意思?在呈现的HTML标记中,表单提交输入是否有
name
属性?在名称中有
,这就是您的意思吗?好的,尝试过了,仍然没有骰子。它非常奇怪,运行良好,没有抛出我能看到的错误…并且在var表单上放置断点时提交,我一路通过.submit调用.apply,在jquery的某个深处。有没有可能
#我的链接检查
name=“submit”
?如果是这样的话,给它一个不同的名字。由于某种原因,如果我尝试给一个id以形式_,它总是用我看到的edit_put重命名。我不确定crowjonah您所说的“我的链接检查有name=“submit”是什么意思?在呈现的HTML标记中,表单提交输入是否有
name
属性?在名称中有
,这就是您的意思?这是一种试图让邪恶按其应有的方式行事的尝试,让我试试上面的方法,看看是否有效。好的,返回false确实有效(event.preventDefault()没有效果)…这样就保存了表单。但是链接现在不会转到下一页(这是正确的,因为它返回false)所以,没有办法让它仍然转到下一页?这是一个试图让邪恶的行为按它应该的方式进行的尝试,让我试试上面的方法,看看它是否有效。好的,返回false确实有效(event.preventDefault()没有效果)…这样就保存了表单。但是链接现在不会转到下一页(这是正确的,因为它返回false),所以,没有办法让它仍然转到下一页?
$(document).ready(function() {
    $('#my-link-check').click(function(event){
    var form = $("#edit_put");
    if(form!=null)
        $(form).submit();
    });
});