1

次のテキストを含む selectText という文字列変数があります。

<option value="0101" title="xxxx">A</option><option value="0102" title="xxx">B</option> .....

「0101」または「0102」などの値を含むselectedValという文字列変数があります

selectedVal を指定すると、selectText を変更して selected="selected" という単語を追加できる JavaScript を使用する方法はありますか。たとえば、selectedVal の値が「0102」の場合、selected="selected" が追加された selectText を返します。

<option value="0101" title="xxxx">A</option><option value="0102" selected="selected" title="xxx">B</option>
4

3 に答える 3

2

これを試して:

$('select').val(selectedVal)

また:

$('select option[value='+selectedVal+']').prop('selected', true)

または、オプションを追加した後にメソッドselectを使用して要素の値を設定できます。val()

var selectText = '<option value="0101" title="xxxx">A</option><option value="0102" title="xxx">B</option';
var selectVal ='0102';

$('select').append(selectText).val(selectVal)

デモ

于 2012-08-12T10:08:47.927 に答える
1

selectTextselectValの2 つの文字列変数があるという点で、あなたの言葉をそのまま受け取るとしたら、 selectTextreplace変数に対して文字列を使用するだけです。このような:

var selectText = '<option value="0101" title="xxxx">A</option><option value="0102" title="xxx">B</option>';
var selectedVal = '0102';

var pattern = 'value="' + selectedVal + '"';
selectText = selectText.replace(pattern, pattern + ' selected="selected"');

これにより、次の値を持つ文字列変数selectTextが生成されます。

<option value="0101" title="xxxx">A</option><option value="0102" selected="selected" title="xxx">B</option>
于 2012-08-12T10:15:59.363 に答える
0
selectText = selectText.replace ('"' + selectedValue + '"', 
    '"' + selectedValue + '" selected="selected"');

selectedText二重引用符で囲まれた を検索selectedValueし、それ自体に文字列を加えたものに置き換えます'selected="selected"'。それがあなたが求めたものだと思います。

次の質問を予想して、以下を使用して元の質問を復元します。

selectText = selectText.replace (' selected="selected"', '');
于 2012-08-12T10:27:51.443 に答える