2012-03-15 97 views
1

我有一個PHP腳本和一個文本字段的窗體。但是,當我在文本字段中按Enter鍵時,提交按鈕不會在$_POST陣列中設置。在文本框中按下輸入,提交按鈕設置,取消設置問題與IE

但是,當我在窗體中有兩個文本字段提交按鈕設置在$_POST數組。

這發生在IE中。任何人都可以解釋這背後的原因嗎?

下面是代碼我與

<?php 
print_r($_POST); 
?> 
<form action="" method="post" name="frmdata"> 
<input type="text" name="abc1" id="abc1" value="" size="20" maxlength="20"/> 
<input type="text" name="abc" id="abc" value="" size="20" maxlength="20"/> 
<input type="submit" name="submit1" value="submit1" id="submit1" /> 
</form> 

測試如果我刪除文本框之一,按提交表單輸入鍵,輸入在文本框中的文字,IE不會設置Submit按鈕$_POST數組。

這不設置提交按鈕: -

<?php 
print_r($_POST); 
?> 
<form action="" method="post" name="frmdata"> 
<input type="text" name="abc1" id="abc1" value="" size="20" maxlength="20"/> 
<input type="submit" name="submit1" value="submit1" id="submit1" /> 
</form> 

事實上,我這個在回答this問題。

+0

它有什麼關係*你刪除哪個*輸入? – 2012-03-15 12:29:05

+0

@Chris:您可以通過刪除任何文本元素來進行測試。當表單中只有一個文本輸入元素和一個提交按鈕時,它不會設置「submit」。 – 2012-03-15 12:33:22

+0

我問是否重要**你刪除了兩個文本輸入中的哪一個,因爲我無法重現這一點。你可以編輯你的文章以包含「破碎」版本嗎? – 2012-03-15 12:39:18

回答

0

謝謝@Yaniro。這是一個IE bug

IE具有單一文本元素的錯誤 - 如果您使用回車鍵提交表單,Submit按鈕將不會在$_POST中設置。

如果您希望submit button$_POST中設置,則當在IE中按Enter鍵提交表單時,您必須至少有2個表單元素。