Bootstrap Form Helpers 国家/地区选择器未序列化

Bootstrap Form Helpers country picker doesn't get serialized

我的表单中有一个国家/地区选择器,如下所示:

<select class="bfh-countries text-left" name="country" id="country" data-country="DE">  
</select>

我可以像这样使用 jQuery 获取值:

$("#country").val()

但是当我尝试使用 $("#myform").serializeArray() 序列化表单时 "country" 的值是一个空字符串。

我该如何解决这个问题?

我 运行 遇到了这个问题,我花了很长时间才找到它,因为没有任何例子。你真正想要做的是使用 data-name="country",它将后端的隐藏变量命名为 country。对于国家选择器,您可以使用 div 标签,如下所示:

<div class="country bfh-selectbox bfh-countries" data-flags="true" data-filter="true" data-name="country" data-country="POSTBACK_VARIABLE_GOES_HERE"></div>

如果你这样做,你会发现一个隐藏的变量被添加到页面如下:

<input type="hidden" name="country" value="US">

上面的值假定您 select 在美国,但它是作为 2 个字符的代码输入的,如果您需要 server-side,则可以按上面的 data-country 输入验证并再次显示页面,而无需强制用户重新 select 值。

这简直是一场噩梦。