表单提交后,以html格式保存数据

时间:2012-12-06 04:33:08

标签: php html forms

我试图在提交后将输入保留在html表单字段中。所以,我用过像

<input type="text" name="myField" value="<?php echo isset($_POST['myField']) ? $_POST['myField'] : 'column_name' ?>" />

如果输入类型为text,它的工作效果很好。它与<textarea>&amp; <select>

2 个答案:

答案 0 :(得分:2)

<textarea>s don't have a value attribute.他们有一个身体:

<textarea name="myField2"><?php echo isset($_POST['myField2']) ? $_POST['myField2'] : 'column_name' ?></textarea>

同样,<select>s do not have a value attribute<select>的值由包含<option>的{​​{1}}确定。这个留给读者作为练习。提示:您需要迭代<select>的{​​{1}}并有条件地将<option>属性添加到一个或多个selected中。

答案 1 :(得分:2)

对于textarea:

<textarea><?php echo isset($_POST['myField']) ? $_POST['myField'] : 'column_name' ?></textarea>

选择:

<select>
   <option value='xx' <?php echo isset($_POST['myField'])&&$_POST['myField']=='xx'?'selected="selected"':''?>>XX</option>
   <option value='yy' <?php echo isset($_POST['myField'])&&$_POST['myField']=='yy'?'selected="selected"':''?>>YY</option>
</select>

如果您使用的是jQuery,我更喜欢使用javascript填充select:

<select name='myField'>
    <option value='xx'>XX</option>
    <option value='yy'>YY</option>
</select>
<?php if(isset($_POST['myField'])):?>
<script type='text/javascript'>
    $("select[name=myField] option[value='<?php echo $_POST['myField']';?>']").attr("selected","selected");
</script>
<?php endif; ?>