如何在其他PHP页面上获得ajax成功响应?

时间:2014-12-22 12:37:09

标签: javascript php jquery ajax

我有php页面。

在该页面上,有选择城市的下拉列表。这些城市出现在数据库中。

在下拉菜单旁边。我有按钮添加更多城市。点击该按钮,会出现一个弹出窗口(彩色框),其中我有表格添加新城市。

现在我想要的是,当我在弹出窗口中添加城市时,关闭弹出框后,该城市也必须出现在城市的下拉列表中。

我试图使用ajax并且ajax给了我回复。

每当我添加一个新城市时,这个城市都会被添加,我会在那个城市和其他人那里得到这个城市。

但我无法将该成功数据发送到其他PHP页面。

我该怎么做?

这是将请求发送到其他页面并获取所有城市(已添加城市和最近添加)的功能但是我可以将该响应发送到其他页面,我希望使用此ajax调用响应填充该城市下拉列表。

function executeQuery() {
  $.ajax({
    url: '<?php echo WEB_URL; ?>pages/reload_fields.php?chk=vessel',
    success:function(result)
                        { 
                            $("<?php echo WEB_URL; ?>pages/add_report_entry.php#refreshPG").html(result);

                        }
  });
  setTimeout(executeQuery, 5000); // you could choose not to continue on failure...
}   

3 个答案:

答案 0 :(得分:0)

为什么需要运行AJAX挂钩来填充下拉列表?为什么不直接调用函数并遍历结果:

<select>
<?php
$cities = function_that_returns_cities();

foreach ($cities as $city) {
?>
  <option><?php echo $cities['name']; ?></option>
<?php } ?>
</select>

例如这样的东西。

答案 1 :(得分:0)

多个场景,但如果你真的想用Ajax重新加载select ...

  1. 将要刷新的部分放在php文件中,在弹出结束时用Ajax重新加载 $( “#下拉”)负载( “newlist.php”);

答案 2 :(得分:0)

在颜色框的关闭事件中,使用另一个ajax调用以json格式获取城市,并在该选择框中填充它。

$(&#34; .callbacks&#34)。颜色框({

onClosed: function() {
    $.ajax({
        url: 'getcities.php',
        type: 'POST',
        data: 'q=' + str,
        dataType: 'json',
        success: function(json) {
            $.each(json, function(i, value) {
                $('#myselect').append($('<option>').text(value).attr('value', value));
            });
        }
    });

}

});