onchange呼び出しは、ラベルではなくselect要素で行う必要があります
<label class="col-sm-2 form-control-label">Codigo Productor (*)</label>
<select name="vendedor_codigo onchange="productorInfo(this.value)">
しかし、私には、プロセスを完全に理解していないかもしれません。ページが読み込まれたときにajax呼び出しが発生しないため、このビット:
<select id="ajax-vendedor" name="vendedor_nombre">
<?php foreach ($ajax_productor_result as $dd_productor_display) : ?>
<option placeholder="Seleccione codigo" value="<?= $dd_productor_display['vendedor_nombre']; ?>">
<?= $dd_productor_display['vendedor_nombre']; ?>
</option>
未定義の変数警告が表示されていると思います($ajax_productor_result
を設定している場合を除く) 最初は何らかの方法で)
ajaxからの応答は通常、成功を介して.jsに描画されます:function
(result) {
$("#ajax-vendedor").html(result);
}
ただし、この外観からは、投稿されたコードよりも多くのコードがない限り、.html()関数に配列またはデータベースの行を渡すため、何も表示されません。
したがって、1)ページロード時にオプションが含まれていない選択(またはオプションがある場合はデフォルトのオプション)を描画する必要があります2)成功関数が使用できる応答を返します。 jqueryが解析できるjson文字列3)jqueryのデータを<options>
にフォーマットします 次に、.html()
を使用します select4)を更新する関数。ページが最初に読み込まれたときにこれを実行する場合は、productorInfo(id)
へのドキュメントレディ呼び出しを追加します。 関数-これは、初期選択値を何らかの方法で設定している場合に関連します(したがって、関連性がない可能性があります)