-1

这是怎么回事:我有 php 解析器,可以将数据保存到一些本地文件中,一旦页面通过包含加载,这些文件就会被获取。我想给用户一个刷新该数据的机会,因此我需要重新启动解析器并将新的数据字符串传递给页面的元素,而无需重新加载页面。

有人能帮帮我吗,我的大脑已经融化了。可能我只需要一个简单的 AJAX 调用,但请不要保留正确的语法。

这是我的看法(可能非常错误):

<element id="button"></element>

<div id="new_data"></div>

<jquery>
$('#button').onclick(function() {

call for test.php, let it do it's job and get the $result_string

$('#new_data').innerHTML($result_string);

});
</jquery>


<?test.php

function parser() {

all in place;

return $result_string;
}
?>

PS也有一些与表格有关,但也无法弄清楚。

解决了!!!

如果有人发现这个问题,这对我有用:

    $("#button").bind('click', function() {
$.post("test.php", function(data) {
$("#data").html(data);
});
});

或者

$("#button").bind('click', function() {
$('#data').load('test.php');
});

并且在 test.php 中只是一个简单echo $result;的结束,工作完美且相当快。

希望能帮助到你!

4

2 回答 2

1

我假设您需要在单击按钮时进行 ajax 调用,这将获得 result_string,试试这个:

$('#button').onclick(function() {
    //using simple ajax post..

    $.post('test.php',function(data){
        $('#new_data').html(data); //here i am returning the data as HTML from test.php..
   });
});

如果您需要 return_string 作为 javascript 对象,那么您可以发送 JSON 作为响应:

function parser() {

    all in place;

    return echo json_encode(array('result'=>$result_string));
}

并在帖子中将其作为对象

$.post('test.php',function(data){
    $('#new_data').html(data.result); 
});

虽然对你的问题有点困惑,但我认为这会让你开始..

于 2013-06-04T05:07:49.307 回答
0

这是 ajax 请求的语法。

   $('#button').onclick(function() {
      jQuery.ajax({ 
        type:'post',
        url:'test.php',
        data:[],
        dataType:'json',
        success: function(rs)
        {
          $('#new_data').innerHTML(rs.result_string);
         }
        failure : function(rs)
        {
            alert(rs.errorMesage);
        }
     });
  });
于 2013-06-04T05:06:55.037 回答