我有一个已经复杂的表单,其中包含一个包含25个国家/地区的选择框,并且该表单上有3个输入,其默认值需要根据所选国家/地区进行更改。
该解决方案必须适用于IE 10和IE 11以及其他现代浏览器。
我遇到的问题是确定最合适的技术来实现这一目标。
我觉得在这种情况下Ajax是必要的,尽管它没有打折。
每行数据只包含以下值:
21,120,17,250;
其中21是country_id,因此,不需要加载大量数据。
我们已经在很大程度上依赖JQuery来进行大量的行为管理。
鉴于我面临的问题,有人能指出我正确的技术方向来应对这个问题,甚至是一个能让我先行一步的教程吗?
答案 0 :(得分:2)
您可以将默认值存储在javascript对象中,并按国家/地区ID对其进行索引。
类似的东西:
var countryDefaults = {
"21": {
a: 120,
b: 17,
c: 250
},
"22": {
a: 1,
b: 2,
c: 3
}
// ...
};
您可能需要在选择框中注册更改事件处理程序。捕获更改事件后,您只需要检索所选的国家/地区ID(可能在您选择的option
标记上包含数据属性)。获得国家/地区ID后,您可以从countryDefaults
哈希值countryDefaults[countryId]
)中检索默认值并更新输入的默认值。
具体技术是:HTML,Javascript和JQuery(尽管你可以在没有JQuery的情况下完成)。或者,您可以尝试使用支持数据绑定的MVC框架,例如Ember或Angular。
我希望这会有所帮助。