2010-04-21 71 views
6

我有一組單選按鈕。當選擇主要時,主要公司字段被隱藏。我還想在這個時候清除下拉選擇。我怎樣才能做到這一點?清除單選按鈕單擊下拉選擇

<p> 
     <label>Company Type:</label> 
     <label for="primary"><input onclick="javascript: $('#sec').hide('slow');" type="radio" runat="server" name="companyType" id="primary" checked />Primary</label> 
     <label for="secondary"><input onclick="javascript: $('#sec').show('slow');" type="radio" runat="server" name="companyType" id="secondary" />Secondary</label> 
     <div id="sec"> 
     <label for="primary_company">Primary Company:</label> 
      <%= Html.DropDownList("primary_company", Model.SelectPrimaryCompanies, "** Select Primary Company **") %> 
     </div> 

    </p> 

回答

8

可清除選擇(即,選擇第一個選項),像這樣:

$("#primary_company").find('option:first') 
        .attr('selected','selected'); 
+0

+1。但爲什麼'.parent('select');'部分?你可以使用'.end()',對吧? – 2010-04-21 15:09:57

+0

@大衛 - 這是一個更長的鏈條的一部分,以服務於一個邪惡的目的。 (我從我的一個測試頁粘貼了太多的代碼),但現在你指出了,'end'比'parent('select')'好。謝謝。 – karim79 2010-04-21 15:15:30

0

要完全清除選擇(因此連第一個元素被選中),你可以使用:

$('#primary_company').attr('selectedIndex', '-1'); 

如果#primary_company是一個多選擇框,你可以使用:

$('#primary_company option').attr('selected', false); 
0
$("#primary_company").find('[selected]').removeAttr("selected"); 
4

您可以將null傳遞給jQuery val()方法,作爲清除下拉列表的好方法。

$('#primary_company').val(null); 
相關問題