执行以下操作的最佳方式是什么:
带有COUNTRYies的下拉列表。国家/地区列表采用json格式,从Web服务中检索。
根据国家/地区选择显示或预填充STATE下拉列表。
这看起来是标准要求,但无法找到合适的解决方案。
如果使用Sightly,我们现在做了什么,拨打电话获取json中的国家列表并填充,并根据选择显示STATES(美国)或PROVINCES(加拿大)并进行显示/隐藏。但是正在寻找更好的替代品。
<!-- COUNTRY -->
<select class="myContactFieldSelect" id="companyCountry" tabindex="22" name="countryID">
<option value="">Please Select</option>
<div data-sly-list.country="${jHelper.pJSON.countryList}" data-sly-unwrap>
<option value="${jHelper.pJSON.countryList[country].countryID @ context='html'}">
${jsonHelper.parsedJSON.countryList[country].countryLongName @ context='html'}
</option>
</div>
</select>
<!-- STATES or PROVINCES -->
<select class="myContactFieldSelect" id="companyState" tabindex="20" name="stateLongName" style="display: none;">
<option selected="selected" value="">Please Select</option>
<div data-sly-list.state="${jHelper.pJSON.stateListUS}" data-sly-unwrap>
<option>${jHelper.pJSON.stateListUS[state].stateLongName @ context='html'}</option>
</div>
</select>
<!-- OR -->
<select class="myContactFieldSelect" id="companyProvince" tabindex="21" name="provinceLongName" style="display: none;">
<option selected="selected" value="">Please Select</option>
<div data-sly-list.province="${jHelper.pJSON.stateListCA}" data-sly-unwrap>
<option>${jHelper.pJSON.stateListCA[province].stateLongName @ context='html'}</option>
</div>
</select>
答案 0 :(得分:0)
我的解决方案是:
可以通过根据用户地理位置预填充国家/城市来增强上述解决方案。