如何通过AJAX更改变量?

时间:2013-08-30 11:31:19

标签: php javascript jquery ajax

我需要使用AJAX提供建议。

我有一个页面,用于在块中显示信息,如:

<div1 container>
   <div2>
      some data
   </div2>
   <div3>
    <?php echo $variable;?>
   </div3>
</div>

并有另一个页面生成数据:

function example( $array )
{
   ...some code...
return $answer
}

$variable = example($array);

我正在从表单发送带有一些POST数据的AJAX查询,我需要在操作后获取新变量并将其放在相同的新参数中。

这是我的AJAX功能:

function sendDataChild(btn) {
var form = $(btn).closest('FORM[name=answer-form]');
var data = form.serialize();
$.ajax({
    type: "POST",
    url: "get.php",
    dataType: "post",
    data: data,
    cache: false,
    success: function (data) {
        form[0].reset();
        //document.location.reload();
    },
    error: function (xhr, str) {
        alert('Возникла ошибка: ' + xhr.responseCode);
    }
});
return false;};

当我清除//只是重新加载页面它有效,但这是错误的方式导致我的页面很大。 有人可以建议如何制作吗?

3 个答案:

答案 0 :(得分:1)

我认为您希望成功函数将数据输出到您希望变量显示的div中:

success: function (data) {
    form[0].reset();
    $("#divId").html(data);
}

答案 1 :(得分:1)

将id提供给要显示结果的div

<div id="div3">

</div>

你需要改变你的ajax

 function sendDataChild(btn) {
var form = $(btn).closest('FORM[name=answer-form]');
var data = form.serialize();
$.ajax({
    type: "POST",
    url: "get.php",
    dataType: "post",
    data: data,
    cache: false,
    success: function (data) {
        $('div3').html(data);
    },
    error: function (xhr, str) {
        alert('Возникла ошибка: ' + xhr.responseCode);
    }
});
}

答案 2 :(得分:0)

HTML页面

<div1 container>
   <div2>
      <!--some data-->
   </div2>
   <div3 id="div3">

   </div3>
</div>

PHP页面

function example( $array )
{
   //...some code...
   echo $answer;
   exit;
}

和你的JavaScript

function sendDataChild(btn) {
var form = $(btn).closest('FORM[name=answer-form]');
var data = form.serialize();
$.ajax({
    type: "POST",
    url: "get.php",
    dataType: "post",
    data: data,
    cache: false,
    success: function (data) {
        $('div3').html(data);
    }
});
}