0
<html>
<head>
<script>
$('patientlist').click(function showpatient()
{ 
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
 {// code for IE6, IE5
 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
 }
   xmlhttp.open("POST","ajaxlistpatient.php",true);
  xmlhttp.send();         
 })
  </script>
  </head>
   <body>
  <form>
  <input type="button" id="patientlist" name="patientlist" value="List Patient"/>
  </form>
 </body>
 </html>

请帮忙,我想使用同一页面中的按钮列出我的患者列表,而无需重新加载我的主页。

ajaxlistpatient.php 包含我的 sqlquery ..

4

6 回答 6

1

尝试为此使用 jQuery 库,因为 ajax 操作古怪而复杂。

看看这个文件:

http://api.jquery.com/jQuery.ajax/

于 2013-09-05T14:48:29.673 回答
1

你不能像这样访问 DOM $('patientlist')。它必须是$('.patientlist')或者$('#patientlist')

假设 'patientlist' 是一个类,

$('.patientlist').click(function (){ 

   console.log("Clicked");  //Check you got here without any problem

   $.ajax({
            type: "POST",
            url: "ajaxlistpatient.php",
            dataType: 'json',
            success: function (data) 
            {
                console.dir(data); 
            },
            error: function (jqXHR,textStatus,errorThrown)
            {
                //Check for any error here
            }
        });

});
于 2013-09-05T14:52:45.813 回答
0

所有回复都在正确的方向,Jquery+php 是你最好的选择,为了进一步扩展这些回复,这里有一些以前的类似帖子,可能会帮助你有一个参考:

AJAX 调用 PHP 文件从数据库中删除一行?

如何将 jQuery 变量传递给 PHP 变量?

是很好的样本资源,

希望这可以帮助。

于 2013-09-05T15:03:50.253 回答
0

即使您没有在问题中标记 Jquery,看起来 Jquery 仍然被用于单击事件。所以你去:

$('#patientlist').on('click', function(e){
      e.preventDefault();
      e.stopPropagation();
      $.ajax({
           url : "ajaxlistpatient.php",
           type: "post",
           complete: function(d){
              //do something with the return data'd'
           }
      });
});

您需要决定要对响应执行什么操作。确保您可以访问 firefox 中的 firebug 之类的东西,这将极大地帮助您,这样您就可以看到发出的 ajax 调用并通过 firebug 控制台查看响应。Chrome 也有控制台和调试工具,但我更喜欢 firefox/firebug。

于 2013-09-05T14:53:22.133 回答
0

您可以使用 jQuery ajax 方法:

$('#patientlist').click(function showpatient() {
    $.ajax({
        type: 'POST',
        dataType: "xml",
        url: 'ajaxlistpatient.php',
        success: function (data) {
            $('#myContentContainer').html(data);
        }
    });
});
于 2013-09-05T14:54:11.233 回答
0

下面是使用 ajax 的一般和最简单的语法:

$('patientlist').click(function ()
{

        $.post('ajax_files/ajaxlistpatient.php', {var_id:anyData},
        function(data) 
        {
            $('#yourDataHolder').html(data); 
        });
});
于 2013-09-05T14:57:07.150 回答