2013-03-04 15 views
3

這是我的代碼PHP停留在形式的刷新單選按鈕的用戶選擇的(由於錯誤檢查或其他)

<input type="radio" name="rdNumber" value="100"<?=(isset($_POST['rdNumber']) == 100 ? "checked" : "")?>/>100 
<input type="radio" name="rdNumber" value="1000" checked="checked"/>1000 

當表單提交按要求它不能正常工作。(和任何錯誤的情況下)它返回到默認的選中單選按鈕,即值= 1000用戶必須再次點擊值= 100,而目標是,如果用戶選擇100單選按鈕,他應該保持100,不移動到默認檢查(即值= 1000)

我在哪裏錯了? 另外,如果相同的版本是什麼?

+0

你必須在輸入元素中打印「checked」文本。 – 2013-03-04 07:02:22

回答

1

從這裏取出isset

變化:

<input type="radio" name="rdNumber" value="100" <?=(isset($_POST['rdNumber']) == 100 ? "checked" : "")?>/>100 
<input type="radio" name="rdNumber" value="1000" checked="checked"/>1000 

到:

<input type="radio" name="rdNumber" value="100" <?php echo (isset($_POST['rdNumber']) && $_POST['rdNumber'] == 100) ? "checked" : "";?>/>100 
<input type="radio" name="rdNumber" value="1000" <?php echo (isset($_POST['rdNumber']))? (($_POST['rdNumber'] == 1000)? "checked":""): "checked"; ?>/>1000 
+0

關於刪除isset我收到了此通知.. 注意:未定義的索引:rdNumber在C:\ wamp \ www \ aaa \ text.php在線471 – aks 2013-03-04 07:08:37

+0

編輯答案請現在檢查 – 2013-03-04 07:10:21

+0

@ PrasanthBendra我已經建議。但OP告訴它不工作。 – 2013-03-04 07:12:40

0

你在你的代碼有一些問題:

下面是正確的代碼:

<input type="radio" name="rdNumber" value="100" <?php echo ((isset($_POST['rdNumber']) && $_POST['rdNumber'] == 100) ? "checked" : "")?>/>100 
    <input type="radio" name="rdNumber" value="1000" <?php echo ((isset($_POST['rdNumber']) && $_POST['rdNumber'] == 1000) ? "checked" : "")?>//>1000 

我有修改它,現在就來試試。

+0

這不起作用.. – aks 2013-03-04 07:09:18

+0

@aks我修改了它。現在試試。 – 2013-03-04 07:11:25

+1

回覆文本「已檢查」 – 2013-03-04 07:13:47

0

我相信它應該是:

<input type="radio" name="rdNumber" value="100"<?=(isset($_POST['rdNumber']) && $_POST['rdNumber'] == 100 ? "checked=\"checked\"" : "")?>/>100 

你是比較的結果Ø f isset調用100可能不會產生所需的結果。

+0

'isset('會返回true或false,所以這不起作用 – 2013-03-04 07:03:46

相關問題