2017-02-21 44 views
0

我有一个输入字段,我想显示一些默认值或初始值。之后,每当用户改变它的值应该改变,但初始值应该是我给的。但我无法做到这一点。这里是我的输入显示输入的初始值

<input placeholder={this.props.edit_tag_reducer.time_in} 
     id="time_in" 
     type="text" 
     value={this.secondsToHms(this.props.new_marker_reducer.start)} 
/> 

我也试过defaultValue={this.props.edit_tag_reducer.time_in},但没有奏效。

+0

您确定您传递的值不是null或未定义? – Juuso

+0

你正在使用哪个库/模板引擎/框架?请标记。 –

+0

'{this.secondsToHms(this.props.new_marker_reducer.start)}'返回什么?因为这当然应该为元素提供一个“价值”。 –

回答

0

您需要放在引号:

value='"' + {this.secondsToHms(this.props.new_marker_reducer.start)} + '"'

这将作为默认(初始)值行事。 (没有defaultValue属性。)

如果这不显示值,那是因为您的属性不正确或者它不会转换为Hms。

你可以只是尝试'值=“一时10分35秒”,以测试其中的问题在于

鉴于你的问题是不明确的,你可能会希望得到的占位符标记工作。

同样的事情适用。放在引号:

placeholder= '"' + {this.props.edit_tag_reducer.time_in} + '"'

+0

没有问题的价值。我在defaulValue有问题。 – ApurvG

+0

初始值是您的默认(开始)值。 – rasmeister

+0

如果您想让占位符工作,请参阅编辑答案 – rasmeister

0

它没有意义的,同时具有placeholder和您的输入框中value属性,因为占位符用于当值最初缺少或完全缺失,但是因为你正在设置它,所以你不需要它我不这么认为。

还要记住,这里列出的值属性只影响DOM,它实际上并不是JS中输入的值。

并确保{this.props...}实际上包含您想要的值。

+0

我想显示一个默认值。然后,如果用户想改变它,那么他可以改变。在我的情况下,它会通过改变{this.secondsToHms(this.props.new_marker_reducer.start)} – ApurvG

+0

确保你的对象实际上正在返回一个值,但如果是这样,只需将整个东西包装在引号中,它应该工作。 – Slime