如果我使用value属性创建输入或textarea,当用户在该输入中输入某些信息时,提交给服务器的值是否会更改?
如果是这种情况,“value”是否只是作为一个初始占位符,其行为与“占位符”属性略有不同?
例如,如果我有<input type="text" name="color" value="red" placehold="blue">
并且用户输入了orange
,那么在表格的POST中实际提交的是什么?
答案 0 :(得分:3)
是和是。
在HTML中,placeholder
是“假”文本。单击框中的开始键入将导致占位符消失。然而,value
是真实文本;它表示输入的默认值。如果输入具有placeholder
且用户未与其交互,则将提交空输入。但是,如果输入具有value
,则将提交该值。
如果是您的示例,则会提交orange
。事实上,除非用户清空文本框,否则placeholder
毫无意义。
答案 1 :(得分:2)
HTML <textarea>
标记没有有效的value=""
属性。
那就是说,是的,如果用户更改输入值,它将在表单提交期间按原样发送。 placeholder=""
是HTML5属性,不会影响value属性。
答案 2 :(得分:2)
该值是该元素的默认值;它提供初始值,如果用户没有更改它,则该值将提交给服务器。对于某些表单控件,例如单选按钮和复选框,该值是在提交复选框或单选按钮时将提供给服务器的值。
占位符只是在控件内绘制的文本,但永远不会提交给服务器。它本质上是一种为控件提供标签的不同方式,它恰好出现在控件内部。如果您只有占位符,并且用户提交而未输入任何内容,则提交的值将为空。
对于您的示例,orange
将通过POST提交;如果用户没有更改该值,则会提交“红色”。
答案 3 :(得分:0)
好吧,如果我理解正确,那么YES value
属性如果已经设置并且表单已提交,那么输入的值将被发布到服务器交换。
除了您的示例之外,还会提交orange
,因为placeholder
只是一段临时文本。 value
将是输入的原始文本。
根据w3schools:
占位符属性指定描述的短提示 输入字段的期望值
value属性指定
<input>
元素的值。
还有一件事,在您的示例中,第一个red
被设置为值。如果您在不提交任何内容的情况下提交表单,则会提交red
,但如果您将其更改为orange
,则会提交橙色,并且placeholder
将无法生效,因为我们关注的时候它会消失在那个特定的<input>
答案 4 :(得分:0)
占位符属性指定一个简短的提示,用于描述输入字段的预期值(例如,样本值或预期格式的简短描述)。
在用户输入值之前,短提示会显示在输入字段中。
注意:占位符属性使用以下输入类型:text,search,url,tel,email和password。
在这里查看 http://www.w3schools.com/tags/att_input_placeholder.asp