我正在尝试运行一个用作livesearch的ajax脚本,但脚本甚至没有发布我要插入的任何值。
有谁知道我在哪里弄错了。请迫切需要一些帮助才能解决这个问题。
Html -
<form method="post" id="searchform">
<input type="text" size="30">
<div id="livesearch"></div>
</form>
脚本 -
<script>
$(document).ready(function () {
$(".contents-value").keyup(function(e) {
var el = e.target;
var data = {};
data['livesearch'] = el.value;
var url = '/home';
// Submit data via AJAX§
$.ajax({
url : url,
type: 'post',
data : data,
success: function (data) {
}
});
return false;
});
});
</script>
非常感谢先进。
答案 0 :(得分:2)
这有一些问题。
您在input元素中声明了一个keyup事件,该事件调用具有name contents-value()的函数。您的代码中未定义哪个。
您发送的数据有误,在“el”var中,您获得了输入(没关系)。但在这一行:
data['livesearch'] = e.valueOf().val;
e.valueOf().val is undefined.
而是这样做:
data['livesearch'] = el.value;
最后,将on事件更改为keyup:
$(document).ready(function () {
$(".contents-value").keyup(function(e) {
var el = e.target;
var data = {};
data['livesearch'] = el.value;
var url = '/home';
// Submit data via AJAX§
$.ajax({
url : url,
type: 'post',
data : data,
success: function (data) {
}
});
return false;
});
});