私は2つのフォーム要素を持っています。1 つは、getJSON 呼び出しによって動的に入力されるドロップダウン リストです。もう 1 つは、標準の入力テキスト ボックスです。
フォームが読み込まれると、ドロップダウン リストにデータが入力されます。これは承認フォームであるため、テキスト ボックスには「通常」値が入力されます。
私がやろうとしているのは、テキスト ボックスの値と一致するドロップダウン リストの値を選択したオプションにすることです。これは、このタイプの他のドロップダウンでも機能しますが、この場合、ドロップダウン値とテキスト ボックス値のスペースに問題があると思います。
私が抱えている問題では、テキスト ボックスの値が "Big Red Barn" になっています。(引用符なし) ドロップダウン リストの値の 1 つに、"Big Red Barn" という値もあります。(引用符なし) これが選択されているはずです。
形:
<select name="cu_vendors" id="cu_vendors">
</select>
<input type="text" name="ven_name" id="ven_name" />
ドロップダウン リストは問題なく表示されます。
JQuery:
$.getJSON("get-cu-vendors.html", function(data){
$('#cu_vendors').html('');
if(data && data.length > 0){
$('#cu_vendors').append("<option value='' class='red'>Required</option>");
$.each(data, function(key, value){
$("#cu_vendors").append("<option value=\""+$.trim(value)+"\">"+value+"</option>");
});
}else{
$('#cu_vendors').html('');
}
});
$("#cu_vendors option[value="+ $('#ven_name').val() +"]").attr('selected', 'selected');
構文エラーが発生しますが、それが何であるかはわかりません:
Error: Syntax error, unrecognized expression: #cu_vendors option[value=Big Red Barn]
だから、ここではスペースが問題だと思っています。上記の最後の行で $('#ven_name').val() を使用するときに、JQuery でこれらの値を引用する方法はありますか?
助けてくれてありがとう。