我把我的代码放在下面。它基本上有一个文本输入和一个“搜索”按钮(表单)。每当单击搜索按钮(提交表单)时,它必须转到 .submit 函数并执行所需的处理。
HTML 代码:
<form id="twittersearch" name="twittersearch" method="post" action="">
<input name="twitterq" type="text" id="twitterq"/>
<button type="submit" >Search</button>
</form>
<div id="twitter-results"></div>
jQuery代码:
$(document).ready(function () {
var twitterq = '';
function displayTweet() {
var i = 0;
var limit = $("#twitter-results > div").size();
var myInterval = window.setInterval(function () {
var element = $("#twitter-results div:last-child");
$("#twitter-results").prepend(element);
element.fadeIn("slow");
i++;
if (i == limit) {
window.setTimeout(function () {
clearInterval(myInterval);
});
}
}, 20000);
}
$("form#twittersearch").submit(function () {
twitterq = $('#twitterq').attr('value');
$.ajax({
type: "POST",
url: "search.php",
cache: false,
data: "twitterq=" + twitterq,
success: function (html) {
$("#twitter-results").html(html);
displayTweet();
}
});
return false;
});
});
我的问题是表单无法将输入 id= 的“值”发送#twitterq
到 javascript .submit 函数。因此,var twitterq 具有值“未定义”。但是,如果我像这样手动设置输入的值:
<input name="twitterq" type="text" id="twitterq" value="something"/>
var twitterq 现在获取值“某物”。可能是什么问题?
我是 javascript 和 jquery 的新手,所以如果这个问题有点愚蠢,我事先道歉,它已经困扰了我几个小时。