2010-03-01 215 views
2

複選框是否有隻讀屬性? 因爲即使具有此代碼,我仍然可以在複選框上打勾,是僅用於文本框的只讀屬性?如果您希望複選框是隻讀的,那麼代碼是什麼?複選框只讀屬性

<td><input name="stats1" type="checkbox" id="SSS" readonly="readonly" value="<?php echo $row["STAT"]; ?>" <?php echo $row["STAT"] ? 'checked="checked"' : ''; ?> >SSS</td> 

回答

9

上的HTML輸入元素的屬性readonly實際上意味着,是隻讀的。

實際上,你想使一個複選框uncheckable,在這種情況下,搶的Javascript:

<input type="checkbox" onclick="return false;"> 
+0

因爲js最終不可靠,所以請確保在後端檢查。 –

+1

的確,這也適用於'readonly'屬性。人們總是可以使用JS來禁用它,或者篡改請求參數。始終,始終,始終檢查服務器端,不管輸入的風格。 – BalusC

1

嘗試disabled="disabled"代替;)

+0

工作,但這種方式的價值將不會被髮送到服務器了。這是'readonly'的區別。 – BalusC

+0

無論如何不管它是不是不管用嗎? o_O – casraf

+0

這對於例如基於請求的確認屏幕或預覽很重要。 – BalusC

0

這裏我插7個複選框,並設置自己的名字作爲C1,C2 ....在

html頁面C7
<input type="checkbox" name="c1" value="english" /> 
<input type="checkbox" name="c2" value="hindi" /> 
<input type="checkbox" name="c3" value="gujarati" /> 
. 
. 
. 
<input type="checkbox" name="c7" value="Marathi" /> 

here we will use for loop with upto 7 times iteration 

    for($i=1;$i<=7;$i++) 
{ 
    echo $_GET['c'.$i] ."</br>";  
} 


here 'echo' statement will print values from gettig name of checkboxes c1 ...c7 

Here $_GET['c'.$i] will print only its value if that checkboox is checked