2012-04-16 2 views
0

Я пытаюсь отправить значения с одним < выберите > варианта в HTML - вот мой < выбрать >, я даже не уверен, что если у меня есть значение, установленный на право посылать JQuery.JQuery и Mulitple выбор опция

<select id="needapproval" name="needapproval"> 
    <option value="">* * * Select * * *</option> 
    <cfloop query="GetApprover"> 
    <option VALUE="{'theID': '#GetApprover.rar_ID#', 
     'roomname': '#GetApprover.theroom#'}">Request Number - #GetApprover.rar_ID# 
     - Room/Gate Name -#GetApprover.theroom#</option> 
    </cfloop> 
</select> 

OK после того, как я выбираю значение выше я сделать onchange событие в JQuery. Значения отправить:

{'theID': '29', 'roomname': 'red room'} 

Как захватить два значения и установить их на Варс - ниже моего JQuery, я знаю, что это неправильно:

var theID = $("#needapproval.theID").val(); 
var roomname = $("#needapproval.roomname").val(); 

ответ

1

Вы можете получить эти значения с некоторой модификацией ваша разметка, как показано ниже,

<select id="needapproval" name="needapproval"> 
<option value="">* * * Select * * *</option> 
<cfloop query="GetApprover"> 
<option VALUE='{"theID":"#GetApprover.rar_ID#","roomname":"#GetApprover.theroom#"}'>Request Number - #GetApprover.rar_ID# - Room/Gate Name -#GetApprover.theroom#</option> 
</cfloop> 
</select> 

Обратите внимание на одинарные кавычки и двойные кавычки в VALUE attr.

И тогда вы можете сделать JSON.parse() по значению, чтобы получить theID и roomname. Смотрите ниже,

$(function() { 
    $('#needapproval').change(function() { 
     var selectedVal = $(this).val();   
     var jsonObj = JSON.parse(selectedVal); 
     alert(jsonObj.theID + " " + jsonObj.roomname); 
    }); 
}); 

DEMO

Смежные вопросы