0

所以下面是我点击屏幕上的按钮时想要运行的脚本。基本上使用 AJAX 来查询我的数据库以获得更多结果。问题是,我对 Javascript 非常陌生,并且该脚本在页面加载时运行,而不是在我单击应该调用它的按钮时运行。


<script type="text/javascript">
function next_ten_results()
{
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("main").innerHTML=xmlhttp.responseText;
    }
  }
var page = "<?php echo $page_count; ?>";
alert('the city of ' + page + '!');
var name = "<?php echo $sql_name; ?>";
var rest_location = "<?php echo $sql_location; ?>";
xmlhttp.open("GET","another_ten_results.php?location="+rest_location+"&rest_name="+name+"&page="+page,true);
xmlhttp.send();
}
</script>  

感谢阅读小伙伴!我确定我犯了一个简单的错误,比如我需要等待文件准备好或其他什么,但正如我所说,我很新。任何帮助和建议表示赞赏。

干杯!

编辑:在需要时调用此函数的代码......即使代码在没有它的情况下运行:

if($num_rows > 9){
      echo '<onclick="next_ten_results_NOT()" class="button next" id="button_next" >Page 2</a>'; }

编辑(2):为了将来参考,问题(如上所述科迪)是我忘记了<a...onclick 事件之前。这就是导致代码以某种方式运行的原因。更改后,javascript 查询按计划工作。错误实际上是在 HTML 中。

干杯!

4

2 回答 2

0

对于那些访问这里寻找答案的人:

您调用 javascript 函数的 HTML 无效。没有以 . 开头的标签<onclick ...。我们可以通过结束标签</a>来判断这应该是一个链接。

替换<onclick<a onclick将解决问题。

于 2012-09-07T23:59:08.270 回答
0

将我的答案移动到答案而不是原来的评论:

您正在回显'<onclick="next_ten_results_NOT()" class="button next" id="button_next" >Page 2</a>';正在创建一个名为 . 你错过了<a,这意味着它是一个无效的标签。

于 2012-09-08T00:14:55.800 回答