如何在PHP中提交表单后回显插入的值(=非默认值)

时间:2012-05-24 22:09:46

标签: php forms echo

我有一个用于估算运费的表单字段。目前,该字段具有标签“ZIP / Postal code”,默认情况下表单字段本身为空。我想做以下事情:

  1. 将标签放在表单字段“内部”,使其显示“输入您的邮政编码...”(可能是值=“

  2. 用户将光标放入表单字段后,将删除默认文本。

  3. 用户输入他的邮政编码并点击提交按钮后,他的邮政编码(=他输入的值)会在表单字段中回显,从而替换默认文本

  4. 以下是我正在使用的代码:

    <label for="postcode" <?php echo $this->__('Zip/Postal Code') ?></label>
    <input class="input-text validate-postcode<?php if ($this->isZipCodeRequired()):?>
     required-entry<?php endif;?>" type="text" id="postcode" name="estimate_postcode" 
     value="<?php echo $this->htmlEscape($this->getEstimatePostcode()) ?>" />
    

    我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:3)

您可以使用HTML5占位符属性使文本在客户端消失。要使其跨浏览器,请使用jQuery Placeholder plugin(或类似的)。

根据您提交表单的方式,您将* estimate_postcode *作为GET或POST变量提供。

$_GET['estimate_postcode']

$_POST['estimate_postcode']

回显那个值属性。但这不会在页面中持久存在。

如果您严格按照用户的视觉效果进行此操作,请抛弃PHP并通过cookie在客户端完成所有操作。

答案 1 :(得分:0)

<script>
function clearField()
{
  $(#postal_code).val('');
}
</script>


 <form>
 <input id = "postal_code" type = "text" name = "postal_code" value = "Input postal code here" onclick="clearField()"/>
 </form>

这样的事情应该有效。当用户点击它时,clearField将清空该字段,然后表单将发送输入的数据。