2012-12-20 21 views
0

如何使用Javascript獲取所選下拉列表值的當前值?
我有一個用戶聯繫表單,其中我有一個下拉列表,並且列表中選定的值必須由javascript函數捕獲,然後將此值傳遞給控制器​​並設置bean值,然後將值保存在數據庫中。如何通過javascript從下拉列表中選擇值並設置在java bean中選擇的值?

名單就好了,

<select id="ddl"> 
    <option value="val1">Optoion 1</option> 
    <option value="val2" selected="selected">Option 2</option> 
    <option value="val3">Option 3</option> 
</select> 

要從列表

var e = document.getElementById("ddl"); 
var selected = e.options[e.selectedIndex].val(); 

這將使返回字符串selectedval2

如何在Java類中訪問該值,將值存儲在數據庫中?

+4

Java和JavaScript是兩個完全不同的,幾乎完全不相關的語言。 – Pointy

+0

@Pointy:「差不多」? :)多年來,這種宣傳(命名JS)已經讓很多人受到了影響。 – Amadan

+0

我知道,但你知道如何做到這一點在Java ...我不知道那 – Lucky

回答

1

我處理與Ajax調用請求,並轉移控制到春天Controller..I在我的控制器寫了這個代碼..

@Controller 
public class ContactController{ 
@RequestMapping(value = "/contact/processContact", produces = "application/json") 
public @ResponseBody Map<String, Object> processWriteToUs(@ModelAttribute("contact") Contact contact,HttpServletRequest request, HttpServletResponse response, Model model){ 
Map<String, Object> responseMap = new HashMap<String, Object>(); 
    try { 
     Contact contact = new Contact(); 
     contact.setEmail(request.getParameter("email")); 
     contact.setFirstName(request.getParameter("firstname")); 
     contact.setLastName(request.getParameter("lastname")); 
     contact.setType(request.getParameter("ddl")); 
        //process the form details... 
        //responseMap.put("key","value") 
     } 
     catch{Exception e){ 
      e.printStackTrace(); 
     } 
      return responseMap; 
      } 
    } 

現在終於如預期那樣工作...

2

如果你想獲得降選擇值的價值下跌,然後如果你想獲得選定索引的文本,然後

document.getElementById("ddlViewBy").options[document.getElementById("ddlViewBy").selectedIndex].text; 
+0

它不是正確的回答這個問題,但它是把我帶到這裏的問題的正確答案。謝謝! – user314321

3

提交表單到一個servlet

使用

document.getElementById("ddlViewBy").value; 

要獲取選定的值,請在您的servlet中使用此代碼

String str=(String)req.getParameter("selectboxname"); 
相關問題