我正在尝试在rails 3项目中获取一个表单字段,以便在更改时自动保存。我正在尝试使用以下jQuery ajax调用来执行此操作:
$j("#list_" + <%= item.list_id.to_s %> + "_item_" + <%=item.id.to_s %>).live("change",
function(){
$j.ajax({
beforeSend: function(request) {
request.setRequestHeader("Accept", "text/javascript");
},
type: 'POST',
url: '<%= list_text_item_path(List.find(item.list_id), TextItem.find(item.id)) %>/update',
data: {
value: $j(this).val(),
id: '<%= item.id.to_s %>',
list_id: '<%= item.list_id.to_s %>'
},
success: function(){
alert("success");
}
});
});
每当更改文本框时,我在jQuery中都会收到以下错误:
(c.value || "").replace is not a function
这是在jQuery-1.5.min.js中。我也遇到了与jQuery-1.4.2.min.js相同的错误。 (我更新到1.5,看看这对任何事都有帮助。)
关于我哪里出错的任何想法? 非常感谢。
编辑:哦,废话,当我的HTML发布时,我意识到我已经将.live()调用附加到表单输入元素的容器div而不是表单输入元素本身。我有一个单独的问题,但我想我会发布一旦我找出可能导致它的原因......
答案 0 :(得分:1)