我正在创建OnePage客户帐户,我需要验证动态创建其他地址表格, 全部在同一页面上.

我了解在Magento您应该使用 new VarienForm 验证您的表格。为此,您只是致电以下行

var dataForm = new VarienForm('form-id', true);

但是,如果表单是动态创建的,例如其他客户地址,所有表格都在同一页面上,您需要检查表格是否已验证

if(dataForm.validator.validate())

不是这个 var dataFrorm 通过下一个生成的表格覆盖?因此,如果您尝试检查第一表格是否已验证,它实际上是最后检查的吗?是的,我可以动态生成表单ID,但是然后我需要使用JS变量名称做同样的事情?那听起来不正确,还是吗?是否有更好的方法来实现相同的目标?

有帮助吗?

解决方案

如果您动态创建表单,则确保通过JavaScript(AJAX)请求执行此操作。

因此,您可以在创建表格后可以添加JavaScript的地方。

对于您的步骤计数有限的情况,每个步骤都会获得自己的表单ID,因为每个表单都有不同的内容/字段。

但是:如果您始终使用相同的表单并仅更改内容,则不需要创建新对象,因为它绑定到DOM元素而不是ID。在这种情况下,您甚至不应该重新创建它。

But2:如果您始终替换整个表单,则可以使用相同的ID,因为无论如何旧表单都不在。因此,您随时可以使用相同的表单ID创建新的

非常重要的规则:在页面上没有一个具有相同ID的元素,它将使事情破裂。

许可以下: CC-BY-SA归因
scroll top