-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 に答える