2010-11-25 83 views
0

我需要序列化在錶行輸入和選擇選項(TR)
序列化輸入和選擇選項

<form action='' METHOD='post' id='formConfirmOrder'> 
<table id='viewTableOrders'> 
<tr id='vagon1'> 
    <td> 
    <select name="order[1][rail_path]" title="1"> 
    <option value="" selected="selected"></option> 
    <option value="1">Patch1</option><option value="2">Patch2</option> 
    <option value="3" selected="selected">Patch3</option><option value="5">Patch4</option></select> 
    </td> 
<td> 
<input name="order[1][vagon_id]" value="210" type="hidden"/> 
</td> 

$('#formConfirmOrder > #viewTableOrders tr#vagon1 
              select option:selected, 
     #formConfirmOrder > #viewTableOrders tr#vagon1 input').serializeArray(); 

.. * 螢火 *只有輸入

[Object { name="order[1][vagon_id]", more...}] 


我無法從選項中獲取選定值!
輸入序列化。 ,但沒有選擇。

回答

2

你需要序列化<select>不是選項...它會抓住選定<option>元素automatically(通過獲取<select>,這是一個數組,這裏的.val()),像這樣:

$('#formConfirmOrder > #viewTableOrders tr#vagon1 select, 
    #formConfirmOrder > #viewTableOrders tr#vagon1 input').serializeArray(); 

或者,如果你希望所有的輸入,只需使用:input選擇,就像這樣:

$('#vagon1 :input').serializeArray(); 

由於id屬性是唯一的,這應該工作,給予有效的標記......如果你的ID不是唯一的,那是你需要解決的另一個問題。

+0

謝謝!我剛剛添加了tr#vagon1 select(不是選擇選項:select) – Dezigo 2010-11-25 10:05:40