即使变量可用,ajax调用也不成功

时间:2017-05-23 04:34:04

标签: javascript php ajax

在此代码中,当变量$place可用时,我尝试填充下拉列表。进行了一次ajax调用,以获取以json格式编码的listplace.php文件中的数据

问题是没有从通过ajax调用完成的php文件填充的下拉列表。但是当我echo $_GET['place'];它工作时, listplace.php 也包含数据,但仍然没有填充下拉列表。请帮忙!!

listplace.php输出

{"option":["HBD T-Shirt"]}

Php Code

<?php
echo $_GET['place'];
?>

<select id="name">
  <option selected disabled>Please select</option>
</select>


<?php if (isset($_GET['place']) && $_GET['place'] != '') { ?>
    <script>
        $.ajax({
            type: "POST",
            data: {place: '<?= $_GET['place'] ?>'},
            url: 'listplace.php',
            dataType: 'json',
            success: function (json) {
                if (json.option.length) {
                    var $el = $("#name"); 
                    $el.empty(); // remove old options
                    for (var i = 0; i < json.option.length; i++) {
                        $el.append($('<option>',
                            {
                                value: json.option[i],
                                text: json.option[i]
                            }));
                    }
                }else {
                    alert('No data found!');
                }
            }
        });
    </script>
<?php } ?>

1 个答案:

答案 0 :(得分:0)

由于一个简单的错误终于找到了解决方案,而不是$place我提到的$variable现在ajax工作得很好。

这里有一个代码window.location = "1stlink.php?place=" + encodeURIComponent(textval);,而不是$ place我放了$ variable所以它有效。