2015-04-23 58 views
0

在我的表单中,用户可以使用Knockout切换某些表单元素的可见性,以节省空间。如果元素可见并且用户未填写必填字段,那么当他们按下保存按钮时,HTML5将通知用户所需的字段。然而,当元素被隐藏时,保存默默地失败,在按下按钮时什么也不做。KnockoutJS&HTML5必需属性&可见:否

对用户来说唯一的迹象表明某些错误是保存按钮不响应。当然,在控制台中它有一个熟悉的消息'一个无效的表单控件不可聚焦'。

你有没有处理过这个问题?你是怎么解决的?我不想拿走必需的属性。我想一个解决方案可能是使用JavaScript验证这些字段类型而不是HTML5。建议表示赞赏。

类似的问题:

+0

有几种不同的方法可以做到这一点。您可以使用[jQuery Validation](http://jqueryvalidation.org/)或[Knockout Documentation](http://knockoutjs.com/documentation/extenders.html)讨论监视输入的状态(但是他们没有使用'required''),或者在你调用save函数之前,你可以使用jQuery来检查所有':hidden'输入/ div等,并检查它们的'val()'或'text() –

回答

0

使用形式从选择提交的,而不是读值。因为如果表单被提交,HTML5所需的提交将会起作用。