我正在创建一个注册表单,需要“检查用户名是否可用”按钮。
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<div id="availablity">
<input type="text" name="name" value="<?php _e("Username") ?>" style="float: left;"/>
<span id="availability_status" style="float: left;">icon here</span>
<input type="submit" name="check" value="<?php _e("Check") ?>" style="float: left;"/>
<div style="clear: both;"
</div>
<input type="text" name="mail" value="<?php _e("E-Mail") ?>" id="" class="input" />
<input type="submit" value="<?php _e("Register") ?>" id="register" />
<p class="statement"><?php _e("A password will be e-mailed to you.") ?></p>
</form>
第5行的按钮包含可翻译的文本,因此值会发生变化。代码有效,当单击“检查”时,会提交名为“检查”的额外查询,并单击“提交”,忽略“检查”。有没有什么办法可以在保持默认值(可能是'1')的同时更改文本。目前,我所能做的服务器端都是检查是否提交了名为“check”的查询,而不是打扰它的值。
答案 0 :(得分:2)
而不是<input>
,其值与屏幕上的文字完全相同,请使用<button>
,其中屏幕上的文字可以是您想要的任何内容。
换句话说,改变
<input type="submit" name="check" value="<?php _e("Check") ?>"
style="float: left;"/>
到
<button type="submit" name="check" value="1" style="float: left;">
<?php _e("Check") ?>
</button>
因此无论文本如何,它总是具有值1! (当然,你可以使用你想要的任何价值。)