2

是否可以在客户端验证脚本中包含 Ajax(使用 jQuery 不显眼的验证作为框架)并且仍然让验证正常运行?

我有一个验证场景,其中客户端需要将一些用户输入的数据发送到服务器,检查返回的数据,并询问用户是否希望将某些输入的数据替换为获取的数据。我需要自定义 javascript 的情况已经够多了:我不能只使用 Remote 属性,并且 Remote 属性中没有用于额外 javascript 处理的钩子。

这必须在提交之前运行,并且必须是提交之前运行的最后一个或最后一个,所以我将它作为验证的一部分。如果用户对替换问题回答“否”,则不会提交,这是另一种类似于传统验证的方式。

我担心的是,根据定义,Ajax 是异步的,并且验证脚本通常是同步的,如果不总是同步的话。所以我面临着验证例程需要在 Ajax 调用完成之前返回一个值。

我知道我可以在 jQuery.getJSON 调用的长度内关闭 jQuery 中的异步行为,但这有点不雅。这是 MVC3 RemoteAttribute 客户端所做的吗?有没有更好的办法?

4

0 回答 0