【发布时间】:2011-10-31 02:38:54
【问题描述】:
我正在编写一个网站来搜索我的 python 数据库。非javascript版本完美运行。但现在我想使用 ajax 以便不必刷新页面。即,一旦单击搜索按钮,结果就会显示出来。但它不起作用(我点击按钮,没有任何反应)。为什么不???
<script language="javascript">
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");}
function getData(){
if(xmlhttp) {
var obj = document.getElementById("search-results");
xmlhttp.open("GET","http://127.0.0.1:8000/search/?name=i&city=o",true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 &&
xmlhttp.status == 200) {
obj.innerHTML = xmlhttp.responseXML;
}}
xmlhttp.send(null);
}}
</script>
</head><body>
<form id="search-form" action="" method="get">
<input type="text" name="name" id="name">
<input type="text" name="city" id="city">
<input type="button" value="Search" onclick = "getData()">
</form>
<div id="search-results"></div></body>
【问题讨论】:
-
使用 firefox 运行启用了 firebug 的页面(一个插件),并发布按下按钮时显示的任何错误
-
您可能需要在事件处理程序中返回 false
-
感谢我尝试了 firebug,它没有显示任何错误。我尝试切换到 false,但这也没有用
-
@secretformula - 我很确定这会解决它。我会将其发布为答案。
标签: javascript ajax forms search