FormTextPasswordHiddenRadioSelectTextareaFileButton / Submit / ResetImage
表單處理

Checkbox

基本語法
 Checkbox 不是一個獨立的元件,它是 Input 元件的一種使用型態。其基本語法如下:
 <input type="checkbox" name="名稱" value="對應值">

參數說明
 name 係指該元件的名稱,例如:Interest。在事件處理程序中,您可以用 document.FormName.Interest 來稱呼它。
 value 表示選取此一選項時,所代表的輸入值。
 假如您希望預先為使用者勾選某些選項的話,您可以為這些選項加上 checked 參數。例:<input type="checkbox" name="Interest_1" value="movie" checked>。
 如果您希望某一選項失效(無法使用)的話,您可以加上 disabled 參數。例:<input type="checkbox" name="Interest_3" value="sleep" disabled>。
 其他參數的使用請自行參閱 HTML Specification。

使用範例
使用者端:
<form action="act.php" name="DemoForm" onsubmit="return Final_Check( );">
您的興趣:
<input type="checkbox" name="Interest_1" value="movie">電影
<input type="checkbox" name="Interest_2" value="music">音樂
<input type="checkbox" name="Interest_3" value="sleep" disabled>夢周公
<input type="submit" value="Submit">
</form>
您的興趣: 電影  音樂  夢周公 
 當使用者按下 Submit 鍵時,將依 Final_Check( ) 的傳回值決定是否送出資料給 act.php。
<script language="JavaScript">
function Final_Check( ) {
  // 若使用者未選取任何選項時予以警告
  if ( !( document.DemoForm.Interest_1.checked ||
           document.DemoForm.Interest_2.checked ||
           document.DemoForm.Interest_3.checked ) ) {
    alert ("請選取您的興趣!");
    return false;
  }

  return true;
}
</script>

伺服器端:
 這些資料將以元件名稱做為變數名稱,傳送到伺服器端。如果各個 checkbox 設有 value 時,您可以用下列方式顯示其輸入值:
<?
echo "您的興趣是:";
for ( $i=1; $i<=3; $i++ ) {
  if ( ${"Interest_" . $i} != "" )
    echo ${"Interest_" . $i} . " ";
}
?>
 假如各個 checkbox 均未設 value 時,您得改用下列方式顯示其輸入值:
<?
echo "您的興趣是:";
if ( $Interest_1 == "on" )
  echo "電影 ";
if ( $Interest_2 == "on" )
  echo "音樂 ";
if ( $Interest_3 == "on" )
  echo "夢周公";
?>
 您看出它們的差別嗎?以 Interest_1 為例,若該元件的設有 value 的話,傳到後端的值將是 movie;若未設定其 value,則該變數所代表的值就成為 on。當然,以上係以使用者勾選了 Interest_1 選項為前提,否則對伺服器端而言,$Interest_1 是 empty。
 若 register_globals 被設定為 off 時,您必須視資料傳送所使用的 method(GET/POST),改用 $_GET['變數名稱']、$_POST['變數名稱'] 或 $_REQUEST['變數名稱'] 來取得變數內容。

FormTextPasswordHiddenRadioSelectTextareaFileButton / Submit / ResetImage