Ruby rails - 文本字段更改事件和ajax
问题描述:
好吧..我正在更频繁地遇到这类问题。我的大部分html都是渲染的ajax,我使用渲染页面的字段和值来创建新的ajax请求。但是没有一件事情似乎发生。需要了解这是为什么。Ruby rails - 文本字段更改事件和ajax
这是一个带有文本字段的简单表单,我希望在更改事件时调用ajax,以跳过表单/按钮。它不工作。我在这里改变什么?
<div><%= form_tag users_search_path, :remote => true, :id => 'search_form' do %>
<%= text_field_tag :keyword, nil, :maxlength => 11, :size => 20 %># Tried this putting outside of this form, didn't work.
<%= submit_tag " Search ", :id => "search_button", :onclick => "javascript:user_search()"%>
<% end %></div>
<%= text_field_tag :keyword, nil, :maxlength => 11, :size => 20 %>
试过这种形式以外的这种形式,没有奏效。
$(function(){
$("#keyword").change(function() {
alert('ok');
$.post('/users/search', function(data) {
$("#search").html(data);
});
});
}
答
因为最后一个jQuery代码是一个函数,它不会被执行,直到你调用它。删除第一行和最后一行,然后在页面加载时运行,以便将内部定义的函数附加到文本框中。
“没有工作”是什么意思? '$ .post'失败了吗?你的回叫没有被叫?你确实知道[''在更改事件被解雇之前必须失去焦点](http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-eventgroupings-htmlevents ), 对? – 2012-04-28 07:07:54
@ muistooshort - 在控制台上我根本没有看到发布的请求。 – 2012-04-28 07:41:41
但是,在jQuery回调中你的'alert'怎么样? – 2012-04-28 07:45:34