使用this post作为参考,我试图使用ajax发布链接(我非常陌生,所以请耐心等待)。在这一点上,当我点击“发布”后,没有任何反应。按钮。
我的表单如下:
<%= simple_form_for [question, Link.new], :remote => true, :id => 'create_item' do |f| %>
<%= f.input :body %>
<%= f.button :submit, "Post", :onclick=>"javascript:submitForm()", class: "button" %>
并且jquery看起来像这样:
<script type="text/javascript">
function submitForm() {
$.ajax({
type:'POST',
url: 'questions/:question_id/links/new',
data:$('#create_item').serialize(),
success: function(response) {
$('#create_item').find('#item').html(response);
}
});
return false;
}
</script>
答案 0 :(得分:1)
更改为:
:onclick => "return submitForm()"
点击处理程序需要返回false
以阻止默认提交。您的submitForm
函数返回false,但您没有从处理程序返回该函数。
此外,您在javascript:
属性中不需要onXXX
。仅在包含URI的属性(例如href
和src
)中才需要告诉他们运行脚本而不是访问URL。