这基本上是一个简单的问题,但我在这里或谷歌都找不到好的答案。
我们有一个Ruby on Rails应用程序,其表单需要在用户更改下拉菜单中的选定选项时更新部分。复杂的是,此更新将来自数据库 - 它无法在加载时实际存储和隐藏所有可能的数据。显而易见的解决方案是Ajax调用,但问题是Ajax是异步的,而且我们的更新本质上是同步的。我们需要确保用户在提交表单或在表单上执行任何其他工作之前获取更新的信息。
我知道可以(但不应该)指定Ajax调用是同步的,但是有更好的方法吗?每次用户在一个字段中选择不同的选项时,我讨厌单独发帖并重新加载,但我不确定这种情况的最佳做法是什么。
更新:我尝试在JavaScript中切换到使用XMLHttpRequest对象,它可能会起作用(我现在正在讨论Rails路由问题),但是它给了我一个警告,即不推荐使用此对象的同步选项。是否真的没有可接受的方式来获得网页和服务器之间的同步通信?