2010-06-24 89 views
0

Hai 我在多個屬性中有一個選擇輸入字段。我要驗證(空檢查)這一領域的JavaScript和PHP。我的代碼是像「選擇多個=」多」 NAME =‘frm_supply []>’在html中使用php和javascript驗證多選輸入字段

是否有任何人幫助我嗎?

+2

不能幫助,除非你給我們一些驗證規則? – 2010-06-24 09:28:00

+0

需要更多信息。 – 2010-06-24 09:50:41

+0

請參閱此堆棧溢出答案[鏈接] [1] [1]:http://stackoverflow.com/questions/13697401/how-to-validate-group-of-select-items-in-javascript/13697718 #13697718 – 2012-12-04 07:24:49

回答

0

讓我們說你有一個HTML代碼:

<select multiple="multiple" name="frm_supply[]"> 
    <option value="s1v1">A</option> 
    <option value="s1v2">B</option> 
    <option value="s1v3">C</option> 
</select> 
<select multiple="multiple" name="frm_supply[]"> 
    <option value="s2v1">1</option> 
    <option value="s2v2">2</option> 
    <option value="s2v3">3</option> 
</select> 

當提交表單,如果A,B和1進行檢查,$_POST陣列將是這樣的:

Array (
    [frm_supply] => Array (
    [0] => s1v1 
    [1] => s1v2 
    [2] => s2v1 
    ) 
) 

所以,檢查槽循環如果有任何<選擇/ >爲空。以下代碼遍歷兩個< select/> s,並顯示每個「List N has values」「List N is empty」

$countValuesPerList = array(); 
foreach ($_POST['frm_supply'] as $key => $value) 
{ 
    $index = substr($value, 1, strpos($value, 'v') - 1); 
    $countValuesPerList[$index] = true; 
} 

for ($i = 1; $i <= 2; $i++) 
{ 
    echo isset($countValuesPerList[$i]) && $countValuesPerList[$i] ? 'List ' . $i . ' has values' : 'List ' . $i . ' is empty'; 
} 

現在,要檢查客戶端上的選擇,請按照同樣的方式執行and check what is selected in each <select/>

0

多個選擇值存儲在一個數組中。 因此檢查數組的長度,並根據烏拉圭回合的驗證規則,例如用於至少有2個選擇,數組的長度應大於2,依此類推

0
<select name="name"> 
    <?php 
    for ($i = 0; $i < $count; $i++) { 
     echo '<option value='$i'>$i</option>'; 
    } 
    ?> 
</select>