1

特定の値に一致する選択リストの最初のオプションを選択したいのですが、現在、次のように最後の一致が選択されています。

jQuery('.edit-item').click(function(){
   var id = jQuery(this).attr('id');
   var assignee = jQuery('#assignee-'+id).text();
   jQuery('#edit-form-'+id+' select[name=item[responsible]]').val(assignee); 
   return false;
});

<select name="item[responsible]">
  <option value="*">Anyone</option>
  <option value="'+$user+'">Me ('+$user+')</option>')
   -- here a loop with groups --
    <option value="">----------</option>
    <option value="'+$group+'">'+$group+'</option>')
    -- here a loop with all usernames within $group
    <option value="'+$username+'">'+$username+'</option>')
    -- end loop --
   -- end loop --
 </select>')

エンドユーザーが、2 番目の値「私 (ユーザー)」ではなく、そのユーザーが属するグループで選択された担当者である場合、これを行う方法はありますか、それとも回避策が必要ですか?

ユースケースでは、担当者はバックエンド ユーザーです。

<select name="item[responsible]">
 <option value="*">Anyone</option>
  <option value="mister x" selected=selected>Me (mister x)</option> // this one needs to be selected
  <option value="1">1</option>
  <option value="a">a</option>
  <option value="b">b</option>
  <option value="2">2</option>
  <option value="c">c</option>
  <option value="d">d</option>
  <option value="mister x">mister x</option> // this is the one that is selected
</select>

わかりましたので、checked=checked の代わりに selected=selected を使用します。どちらの jQuery を使用しても、手動で行う必要はありません。

$("option[value='mister x']:first").attr("selected", "selected")単一のリストがある場合、すべての一意の ID edit-form-# を持つ複数のフォームがある場合、これはどのように機能しますか?

ryanulitによる回答:

jQuery('#edit-form-'+id+' option[value='+assignee+']:first').attr("selected", "selected");
4

2 に答える 2

3

特定の値に一致する選択リストの最初のオプションを選択したい...

これらのいずれかがそれを行う必要があります。もちろん、'mister x' を検索したい任意の値に置き換えることができます。

$("option[value='mister x']:first").attr("selected", true);

また

$("option[value='mister x']:first").attr("selected", "selected");

編集

それは可能です。特定の選択要素を参照するだけです。また、他の誰かが推奨するように、selectの名前をitem_responsibleに変更し、IDに同じテキストを付けます。次に、これを行うことができます:

$("#item_responsible option[value='mister x']:first")それ以外の$("option[value='mister x']:first")

...ここで #item_responsible はあなたの選択です:

<select id="item_responsible" name="item_responsible">
     <!-- options here -->
</select>
于 2010-01-12T14:37:39.230 に答える
0

選択ボックスではよくある間違いです。それはhtml 部分checked="checked"にあるべきです。selected="selected"

シナン。

于 2010-01-12T13:30:48.650 に答える