问题描述
||
美好的一天,
我在stackoverflow上找到了下面的一些代码,但是对于我一生来说,我无法使它正常工作。我已经玩了一点代码,但是我仍在学习javascript(缓慢)和jquery。
我想做的是创建一个带有搜索输入的搜索div,但是除了重新加载页面外,我希望在搜索下方添加一个div来显示结果,而无需重新加载。输入搜索内容,然后点击\'Search \'。这是我的代码,什么也不做,我可能会添加:
我的jquery版本是1.5.2,并装有
include(\"javascript.php\");
<?php
include(\"search_div.php\");
include(\"javascript.php\");
?>
<script type=\"text/javascript\">
$(\"search\").submit(function() {
$.post($(this).attr(\"action\"),$(this).serialize(),function(html) {
$(\"#results\").html(html);
});
return false; // prevent normal submit
});
</script>
<div id=\"content\">
<div id=\"searchdiv\">
<form type=\"submit\" onsubmit=\"return false;\" name=\"search\" id=\"search\" method=\"post\">
<table border=\"0\" width=\"850\" id=\"searchquery\" cellpadding=\"0\" cellspacing=\"0\">
<tr><td align=\"center\">Search Query: <input type=\"text\" size=\"50\" id=\"q\" name=\"q\"></td></tr>
</table>
<table border=\"0\" width=\"850\" id=\"searchquerybuttons\" cellpadding=\"0\" cellspacing=\"0\">
<td align=\"right\" width=840><input type=\"Submit\" value=\"Search\">
</table>
</form>
</div> <!-- end search div -->
<div id=\"results\">
<?php
if (isset($_POST[\'q\'])) {
echo \"<br><br>Query is: \".$_POST[\'q\'];
}
?>
</div> <!-- End results div -->
</div> <!-- End content div -->
<?php
include (\"footer.php\");
?>
</div> <!-- End of container div -->
解决方法
您是否检查了输出的HTML源代码?
您是否检查了javascript错误控制台以查看错误所在(如果有)?
javascript.php
的内容是什么?您不能在PHP中包含JavaScript库。您应该使用类似:
<script type=\"text/javascript\" src=\"scripts.js\"></script>
另外,这:
$(\"search\").submit(function() {
应该:
$(\"#search\").submit(function() {
并且您应该从<form>
HTML中删除onsubmit属性。