【问题标题】:ajax value pass but no output [closed]ajax值通过但没有输出[关闭]
【发布时间】:2013-05-19 18:00:33
【问题描述】:

我正在使用文本区域。用户键入一个/多个字母按选项卡。调用 Ajax 以显示基于 textarea 输入的选择框。

<body>
    <textarea  id='test' name="test"></textarea>
    <div id="selectbox"></div>
    <script type="text/javascript">
    document.getElementById('test').onkeydown = function(e){
        if (e.keyCode == 9) {
                this.value += "    ";
                if(e.preventDefault) {
                    var search = document.getElementsByName('test')[0].value;
                    e.preventDefault();

                    $.ajax({
                    type: "POST",
                    url: "nishaone.php",
                    data: "search=" +search,
                    success: function(msg){
                            $(document).ajaxComplete(function (event, request, settings){
                                $("#selectbox").html(msg);
                            });
                        }
                    });

                }
            return false;
        }
    }
    </script>
</body>

我检查了 ajax 编码。传递的值。一切看起来都很好。这是我正在使用的 php 文件。

if (isset($_POST['search'])&& $_POST['search']){
    echo $_POST['search'];

    echo '<select  name="plid" id="plid">';
    echo '<option value="" selected="selected">--Select the Pack Name--</option>';
    $tempholder = array();

    $query = "SELECT acname FROM glmast WHERE acname LIKE '". mysql_real_escape_string($_POST['search']) ."%' ORDER BY acname ";
    $done=mysql_query($query) or die(mysql_error());
    $nr = mysql_num_rows($done);   
    for ($i=0; $i<$nr; $i++){
        $r = mysql_fetch_array($done);
        if (!in_array($r['acname'], $tempholder)){
            $tempholder[$i] = $r['acname'];
            echo "<option value='$r[acname]'>".$r["acname"]."</option>";
        }
    }

}

所以这是我的 sql 查询输出。

我试过没有 if 条件。效果很好。

post 值也通过了。但是输出是一个空白的选择框,里面没有任何值。

有什么想法吗??一如既往,我们非常感谢任何帮助!谢谢..

【问题讨论】:

  • 请让您的代码更具可读性。
  • @UtkuYıldırım 已编辑 :) .. 代码看起来不错。帖子值已传递。如果我自己使用一些随机数据,ajax 可以工作并显示选择框。有什么想法吗??
  • 服务器返回的 ajax 没有问题吗?你能console.log(msg)得到正确的答案吗
  • @UtkuYıldırım 我得到一个没有值的空白选择框.. 只需选择包 Item Id hing.. 就是这样.. 我猜它与 mysql 有关系.. 但即使查询也能正常工作当我使用!不知道是什么问题..任何想法..顺便说一句谢谢你的时间!!
  • 我创建了一个 jsfiddle,我认为这就是你想要的,你能检查一下并告诉我你想要什么

标签: php jquery mysql ajax


【解决方案1】:

我创建了一个关于页面端的 jsfiddle 示例

http://jsfiddle.net/utku/cVeLh/3/

你能像这样改变ajax查询吗

$.ajax({
    type: "POST",
    url: "nishaone.php",
    data: {search: search},
    success: function (msg) {

        // We assume you get "<option>something</option>" output from server
        $("#selectbox").append(msg);
    }
});

【讨论】:

  • 感谢回复!!但没有效果:( ..
  • 我已经编辑过了.. @Utku
  • 这是我从服务器的输出..
  • 你检查小提琴了吗?
猜你喜欢
  • 1970-01-01
  • 2019-09-05
  • 2014-04-09
  • 1970-01-01
  • 2012-12-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多