2012-04-30 32 views
2

我有一個用戶正在審覈下拉列表,一個員工選擇列表和一個空的分配審閱者選擇列表。當管理員雙擊SelectList中的員工時,它將被添加到正在審閱的用戶的Assigned Reviewers SelectList中。在POST之前從按鈕提交中選擇SelectList中的所有選項

這裏是一個視覺畫面:

survey SelectList jQuery selected options Reviewers Employee

正如你所看到的,我有jQuery的選擇在分配審稿的SelectList所有選項,但如果你點擊其中一個,它會取消其他選項,並只將所選選項附加到表格中。我將能夠禁用此列表,但我希望用戶能夠從此列表中刪除。我已經使用上BTTN此代碼提交試過,但它只是附加我已經選擇了一個:

 submit_bttn.click(function() { 
     $('.selectionList select option').prop('selected', true); 
    }); 

我甚至嘗試添加上雙擊第二個功能,選擇屬性選項,其中追加作品,但是一旦用戶點擊了作用域就會被移除。

我想過的一件事是將值存儲在隱藏的輸入字段中,但我覺得這是不必要的,並且會從代碼清單中刪除更多代碼。

此外,我使用剃刀視圖:@ Html.ListBox(從viewbag selectList)。

任何幫助將是出色的。

回答

8

你忘了'。'在selectionList的類名:

submit_bttn.click(function() { 
    $('.selectionList select option').prop('selected', true); 
}); 
  • 如果其他選擇具有類selectionList則選擇器應該是「select.selectionList選項」(沒有空格)或只是「.selectionList選項」

編輯
您的評論下面,對問題進行調試,勾到提交表單的取消它,看看是否選擇了所有選項:

//假設您只有一個表單在頁面上。
$(「form」)。submit(function(event){event.preventDefault()});

+0

除此之外令人尷尬的是,它仍然沒有在bttn submit中選擇它們,這是通過控制器發佈的POST。謝謝你的輕微錯誤。 –

+0

也許submit_bttn的選擇器也是錯誤的?如果它沒有選擇任何內容,那麼單擊事件將不會執行任何操作 –

+0

我的解決方案如下。感謝您的幫助,+1 –

5

經過一番研究,我發現在DOM中設置屬性是選擇所有選項並將所選屬性設置爲true的正確方法,未選中。

在bttn提交時,所有選項都會突出顯示!

submit_bttn.click(function() { 
     $('.selectionList option').each(function() { 
      $(this).attr('selected', true); 
     }); 
    }); 
相關問題