-1

看看这段代码:

function nbHintsearch1(counter) {
    var xmlhttp;
    if (counter.length == 0) {
        document.getElementById("suggestion").innerHTML = "";
        return;
    }
    if (window.XMLHttpRequest) {
        xmlhttp = new XMLHttpRequest();
    } else {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange = function () {
        if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
            $j(function () {
                var availableTags = [xmlhttp.responseText];

                function split(val) {
                    return val.split(/,\s*/);
                }

                function extractLast(term) {
                    return split(term).pop();
                }
                $j("#say")
                    .bind("keydown", function (event) {
                    if (event.keyCode === $j.ui.keyCode.TAB && $j(this).data("ui-autocomplete").menu.active) {
                        event.preventDefault();
                    }
                })
                    .autocomplete({
                    minLength: 0,
                    source: function (request, response) {
                        response($j.ui.autocomplete.filter(
                        availableTags, extractLast(request.term)));
                    },
                    focus: function () {
                        return false;
                    },
                    select: function (event, ui) {
                        var terms = split(this.value);
                        terms.pop();
                        terms.push(ui.item.value);
                        terms.push("");
                        this.value = terms.join(", ");
                        return false;
                    }
                });
            });


        }
    }
    xmlhttp.open("GET", "msgto.php?msg=" + counter, true);
    xmlhttp.send();
}

在上面的代码中,我尝试从文本框中的几个单词一种类型的文本框中输出值。在这种情况下,它从名为 msgto.php 的页面获取数据,但它将整个数据作为单个值作为完整的 html 代码提供。

谁能告诉我如何将 availableTags 变量的值作为字符串获取。

msgto.php 看起来像这样:

<?php
$find=$_GET['msg'];$find = strtoupper($find); $find = strip_tags($find);
$find = trim($find);
include 'db.php'; 
$result = mysql_query("SELECT * FROM users WHERE upper(fname) LIKE'%$find%'  or       upper(lname) LIKE'%$find%'");
while($row=mysql_fetch_array($result))
{$at="".$row['fname']." ".$row['lname']."";$js_array = json_encode($at);
echo "". $js_array . ",\n";}
?

>

4

1 回答 1

0

打开开发者控制台(例如 Chrome 中的 F12)并在“网络”选项卡中检查真正的 http 请求是什么样的。也许 PHP 脚本与浏览器预期的服务器目录不同,并且服务器配置为在这种情况下返回默认页面?

于 2013-11-13T18:57:46.023 回答