0

問題を可能な限り単純化したので、これでうまくいくと思います。以下のスクリプトはオートコンプリート機能を制御し、期待どおりに機能します(ユーザーが「t」と入力すると、「test」が推奨入力として表示されます)。

<script type="text/javascript">
$(function() {
    var availableClients = ['test'];
    $("#addClient").autocomplete({
        source: availableClients,
    });
});
</script>

ただし、PHP変数$ test = "'test'"を設定し、元のスクリプトの'test'を<?php echo $test; ?>オートコンプリートスクリプトに置き換えると、機能しなくなります。PHP変数をオートコンプリートソースとして使用できる別の方法はありますか、それとも何かが足りませんか?

編集:これは、PHPが含まれているスクリプトです。

<script type="text/javascript">
$(function() {
    var availableClients = [<?php echo $test; ?>];
    $("#addClient").autocomplete({
        source: availableClients,
    });
});
</script>

そして、関連する唯一のPHPコードはこれです。

$test = "'test'";
4

1 に答える 1

1

問題は、変数の値をエコーするときに引用符を含めていないことである可能性があります。これを試して:

var availableClients = ['<?php echo $test; ?>'];

結局のところ、問題は実際には、それを実行する$test前に定義していなかったことechoでした。これ:

$test = "'test'";

この前に発生する必要があります:

<script type="text/javascript">
$(function() {
    var availableClients = [<?php echo $test; ?>];
    $("#addClient").autocomplete({
        source: availableClients,
    });
});
</script>
于 2012-12-01T22:45:20.860 に答える