0

JS

$('input.completeme').each(function() {
    $(this).autocomplete({
            source: function(request, response) {
                $.ajax({ url: '<?=base_url()?>patients/autocomplete',
                data: { 'term': this.term},
                extraParams: { format: this.element.attr('name') },
                dataType: "json",
                type: "POST",
                success: function(data){
                    response(data);
                }
            });
        },
        minLength: 2
});
});

HTML

<input type="text" name="patient_name" value="Patient name" class=completeme />
<input type="text" name="patient_id" value="ID" class=completeme />

どんなに頑張っても投稿ページに「term」varのみを送信し、extaparameterを送信しません(入力名もphpに送信したい)


私が欲しいもの

オートコンプリートは 2 つの変数を php ファイル $term='the autocomplete search ' と $name="input name に送信して、php がどのフィールドが完了したかを正確に知ることができるようにします"

何が起こるのですか

ページは通常のfirebugを実行してもエラーは表示されませんが、POSTヘッダーをチェックするとTerm varのみが送信されます

何か助けてください??

4

2 に答える 2

0
$('input.completeme').each(function() {
    $(this).autocomplete({
            source: function(request, response) {
                $.ajax({ url: '<?=base_url()?>patients/autocomplete',
                data: { 'term': this.term,'name': this.element.attr('name') },
                dataType: "json",
                type: "POST",
                success: function(data){
                    response(data);
                }
            });
        },
        minLength: 2
});
});

最後に動作します:Dありがとうございました

于 2012-12-07T13:03:35.307 に答える
0

extraParams は jQuery オートコンプリートのオプションですが、このオプションを別の関数 — jQuery.ajax() に渡しています。

于 2012-12-07T13:01:02.103 に答える