Javascript 反应新表单,设置输入值和焦点字段
因此,我要做的是将username字段的值重置为Javascript 反应新表单,设置输入值和焦点字段,javascript,reactjs,newforms,Javascript,Reactjs,Newforms,因此,我要做的是将username字段的值重置为',并将其聚焦(当我从服务器返回错误时) 这些和React有什么关系吗?基本上是在页面加载时检查发生的一些错误,如果该值存在,则您希望将该值作为属性传递给react组件以相应地构建UI 对不起,这个问题有点模糊,你有很多方法可以处理。因为你说它是从服务器返回的,所以没有具体的反应,我假设页面会重新加载?或者您正在进行一个返回到服务器的ajax调用,如果是这种情况,请将响应作为React状态的变量记录下来,并告诉它如果该变量存在该怎么办 聚焦部分取决
'
,并将其聚焦(当我从服务器返回错误时)
这些和React有什么关系吗?基本上是在页面加载时检查发生的一些错误,如果该值存在,则您希望将该值作为属性传递给react组件以相应地构建UI
对不起,这个问题有点模糊,你有很多方法可以处理。因为你说它是从服务器返回的,所以没有具体的反应,我假设页面会重新加载?或者您正在进行一个返回到服务器的ajax调用,如果是这种情况,请将响应作为React状态的变量记录下来,并告诉它如果该变量存在该怎么办 聚焦部分取决于渲染表单的方式,因为您需要访问真实的DOM节点来执行此操作。如果手动渲染,则在渲染此字段时可以传递
ref
:
form.boundField('username').render({attrs: {ref: 'username'}})
然后,当需要聚焦字段时,可以执行React.findDOMNode(this.refs.username).focus()
如果另一个React组件正在为您呈现表单,例如
,则当前无法获取它最终为每个输入呈现的实际DOM节点
数据更新代码应该正常工作,因为
form.updateData()
应该强制包含表单的组件进行更新。你能提供一个有效的例子吗
form.boundField('username').render({attrs: {ref: 'username'}})