2013-04-21 47 views
0

我需要將選擇輸入分爲兩部分,以便在同一頁面上使用一個部分創建動態表格,第二部分爲發送到接收表格。在頁面上動態創建表格以及將值發送到表格

這是我現在有動態創建的div下面,基於選擇輸入選擇:

$a = 0; 
while ($row = mysql_fetch_array($result)) { 
    $people_array[$a] = array(
    "ID"   => $row['ID'], 
    "event"  => $row['name'], 
    "time_needed" => $row['time_needed'], 
); 
$a = $a + 1; 
} 
$count = count($people_array); 

<form> 
<?php for($p=0,$p<$count,p++){ 
    $segment_id = $people_array[$p][ID]; ?> 
    <select name="name_segment" id="name_segment"> 
    <option value="female" > 
     <?php echo $people_array[$p][name]; ?> 
    </option> 
    <option value="male" > 
     <?php echo $people_array[$p][name]; ?> 
    </option> 
    </select> 
<?php } ?> 
</form> 

<div id="name_segment_female" class="name_segment_input" style="display:none;"> 
    Allow at least 30 extra minutes for bathroom usage. 
</div> 
<div id="name_segment_male" class="name_segment_input" style="display:none;"> 
    No extra bathroom time needed. 
</div> 

和JavaScript

<script> 
$("#name_segment").change(function() { 
    var name_segment = $(this).val(); 
    $(".name_segment_input").hide(); 
    $("#name_segment_" + name_segment).show("slow"); 
}); 
</script> 

搜索這裏計算器,我發現this post那讓我從這開始:<option value="{type:'amount',segment_id:'<?php echo $segment_id; ?>'} >。我只需要知道如何在提交頁面之前使用JavaScript分割這個對象。我需要使用選項輸入中的相同值動態顯示隱藏的div,作爲將發送到表單的接收頁面的更具體的值。

回答

0

首先,爲簡單起見,我將選項值全部更改爲相同長度。
例如我離開了「男」相同,但改變了女性對「FMLE」 然後,我改變的JavaScript:

$("#name_segment").change(function() { 
    var name_segment = $(this).val(); 
    var local_segment = name_segment.slice(0,4); 
    $(".name_segment_input").hide(); 
    $("#name_segment_" + local_segment).show("slow"); 
}); 

分析出只是四個字母的部分,同樣使用的原始設計。然後我將選項值更改爲<option value="fmle_<?php echo $segment_id; ?>" >。提交表單後,服務器端將解析segment_id

如果完全有必要,我們可以做更多的工作,只發送segment_id作爲原始問題,但這將達到預期的目標。