【发布时间】:2019-08-22 09:17:24
【问题描述】:
我遇到了一个具有重置输入类型的表单的问题,并且想要在单击重置按钮时重置/清除所有表单值。但不幸的是,我的重置按钮并没有真正重置所有表单值,有一个输入表单没有很好地重置,我的意思是仍然在该表单中保留一些值。如何真正重置所有这些值?
<form name="frm" action="?mod=<?php echo($_GET["mod"]); ?>" method="post">
<div class="panelcontainer" style="width: 100%;">
<h3><div style="display: block; float: left;"><div style="clear: both;"></div>FILTER DATA PENCARIAN</div><input type="button" value="+" style="float: right; display: block; font-weight: bold; width:40px;" id="expand" /><div style="clear: both;"></div></h3>
<div class="bodypanel" id="bodyfilter">
<table border="0px" cellspacing='0' cellpadding='0' width='100%'>
<tr>
<td width='20%'>Nomor Register</td>
<td width='10px'>:</td>
<td>
<input type="text" name="id" value="<?php echo($_POST["id"]); ?>" />
</td>
</tr>
<tr>
<td width='20%'>Nomor Surat</td>
<td width='10px'>:</td>
<td>
<input type="text" name="no_surat" value="<?php echo($_POST["no_surat"]); ?>" />
</td>
</tr>
<tr>
<td width='20%'>Tanggal Surat</td>
<td width='10px'>:</td>
<td>
<input type="text" name="tgl_surat_dari" id="tgl_surat_dari" class="ufilter" value="<?php echo($_POST["tgl_surat_dari"]); ?>" />
S/D
<input type="text" name="tgl_surat_sampai" id="tgl_surat_sampai" class="ufilter" value="<?php echo($_POST["tgl_surat_sampai"]); ?>" />
</td>
</tr>
<tr>
<td width='20%'>Tanggal Pengiriman</td>
<td width='10px'>:</td>
<td>
<input type="text" name="tgl_terima_dari" id="tgl_terima_dari" class="ufilter" value="<?php echo($_POST["tgl_terima_dari"]); ?>" />
S/D
<input type="text" name="tgl_terima_sampai" id="tgl_terima_sampai" class="ufilter" value="<?php echo($_POST["tgl_terima_sampai"]); ?>" />
</td>
</tr>
<tr>
<td width='20%'>Perihal</td>
<td width='10px'>:</td>
<td>
<input type="text" name="perihal_surat" value="<?php echo($_POST["perihal_surat"]); ?>" />
</td>
</tr>
<tr>
<td width='20%'>Deskripsi Surat</td>
<td width='10px'>:</td>
<td>
<input type="text" name="deskripsi_surat" value="<?php echo($_POST["deskripsi_surat"]); ?>" />
</td>
</tr>
<tr>
<td width='20%'>SKPD / Unit Tujuan</td>
<td width='10px'>:</td>
<td>
<select name="id_skpd_pengirim">
<option value="0">[.. Pilih SKPD Tujuan ..]</option>
<?php
$res_skpd = mysql_query("SELECT * FROM myapp_reftable_unitkerja ORDER BY unit_kerja ASC");
while($ds_skpd = mysql_fetch_array($res_skpd)){
if($ds_skpd["id_unit_kerja"] == $_POST["id_skpd_pengirim"])
echo("<option selected='selected' value='" . $ds_skpd["id_unit_kerja"] . "'>" . $ds_skpd["unit_kerja"] . "</option>");
else
echo("<option value='" . $ds_skpd["id_unit_kerja"] . "'>" . $ds_skpd["unit_kerja"] . "</option>");
}
?>
</select>
</td>
</tr>
</table>
<div class="kelang"></div>
<table border="0px" cellspacing='0' cellpadding='0' width='40%'>
<tr>
<td width='50%'><input type="submit" value='Filter' style="width: 100%;" /></td>
<td width='50%'><input type="reset" value='Reset' style="width: 100%;" /></td>
</tr>
</table>
</div>
</div>
</form>
我希望所有输入表单的所有值都真正重置。
图像问题如下所示: https://drive.google.com/file/d/1bZKh9p13HsfzeNek_I1SK2W-u4UlmMsg/view?usp=sharing
仍然保留了一些所有的 id 值。 我希望所有值都被重置。
【问题讨论】:
-
js代码在哪里?
-
为了好玩和傻笑,隐身模式是否也保持相同的行为?
-
当我尝试时它已经重置了所有输入。 (除了选择选项)那有什么问题?
-
还可以查看这个问题:stackoverflow.com/questions/27309291/… 和 OP 编辑:显然,重置按钮会将所有输入的值替换为它们在页面加载时的值。仅当输入的 value 属性未声明或在页面加载时为 null 时,该按钮才会清除所有字段并将它们留空
-
“那么问题是什么?” - 很可能只是您对“重置”含义的错误预期。它应该恢复字段的 默认值 - 对于您的选择字段,这是带有
selected属性集的选项。