[英]How can I use a reset button for php form?
我有一個要用PHP處理的表單。 在用戶提交之前,“重置”按鈕起作用。 但是,當他們提交並重新加載頁面時(我根據$ _POST值使表單字段變為粘性),重置無效。 我該如何解決? 編輯:例如,在窗體上的復選框:
<input type="checkbox" <?php if (isset($_POST['cb12'])){echo 'checked="checked"';} ?> name="cb12" tabindex="34" id=cb value="Education">
和HTML:
<tr>
<td colspan="5" valign="top" class="addit" ><div class="sectionbreak topsp" >
<input type="hidden" name="failure" value="failure.html" >
<p>
<input type="submit" name="Submit" value="Submit" tabindex="49">
Sends your application by email to The Boggs</p>
<p>
<input type="reset" name="Reset" value="Reset" tabindex="50">
Clears all the fields</p>
</div></td>
</tr>
編輯:最后,如果表單已提交(但不完整),我只是隱藏了按鈕。 也許沒人會注意到。
重置按鈕撤消用戶所做的對表單的更改,它不會清除默認值。 如果要刪除所有默認值,則可以使用JavaScript進行以下操作:
<script type="text/javascript">
function resetForm(myFormId)
{
var myForm = document.getElementById(myFormId);
for (var i = 0; i < myForm.elements.length; i++)
{
if ('submit' != myForm.elements[i].type && 'reset' != myForm.elements[i].type)
{
myForm.elements[i].checked = false;
myForm.elements[i].value = '';
myForm.elements[i].selectedIndex = 0;
}
}
}
</script>
...
<form id="myFormId" ...>
<input name="reset" type="reset" onclick="resetForm('myFormId'); return false;" />
...
您可以使用unset($_POST)
響應reset事件。
已經在另一篇文章中回答了這個問題:
我只是PHP的中級人員,並且懶於涉足JQuery這樣的新語言,但是下面的解決方案不是一個簡單而優雅的解決方案嗎?
<input name="Submit1" type="submit" value="Get free quote" />
<input name="submitreset" type="submit" value="Reset" />
無法看到為什么沒有兩個提交按鈕(出於不同的目的)的原因。 然后簡單地:
if ($_POST['submitreset']=="Reset") {
$_source = "--Choose language from--";
$_target = "--Choose language to--"; }
您只需將值重新定義為默認值即可。
重置按鈕撤消用戶對已編輯表單值的更改,不會清除默認值。重置按鈕常用於編輯頁面或提交頁面
<input type="reset" value="Reset" name="reset" />
我剛剛經歷了這件事,請參閱我以前的問題和令人難以置信的有用答案 。
最后,我必須手動重置PHP中的值。
編輯:對您來說,情況並不完全相同,因為您似乎像我那樣基於$ _POST而不是$ _SESSION填充表單值。 在這種情況下,請通過上面的鏈接查看我接受的答案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.