我会尽力解释这个问题。
我有一个woocommerce比萨饼送货网站。人们可以登录并选择他们想要的比萨饼(橄榄,蘑菇等),并选择初级或普通尺寸。
额外内容是复选框,因为必须允许他们选择不同的内容。
然而,尺寸是一个下拉菜单,因为它们必须选择其中一个。正常尺码为全价,初级尺码为全价-1。除非他们选择2个选项中的一个,否则价格不会显示。
问题出现在游客忘记挑选尺寸时。基本上如果他们忘记这样做,并且订购,订单将以0€结束。
我已经尝试了数百种方法来解决这个问题,但我现在肯定会被困住。我唯一的想法是实际上强制下拉菜单在加载页面时选择其中一个选项(正常大小)。
所以基本上下拉不会说“请选择一个”但它会马上说“正常”。如果他们愿意,访客可以改为初级,但至少如果他们不这样做,订单将以全价而不是0欧元。
以下是下拉菜单的代码:
<div ng-repeat="option in post.food track by $index">
<div ng-if="option.type =='select' ">
<label>{{option.title}}</label>
<div ng-if="option.variation == 'yes'">
<select ng-model="option.selectedOption" ng-change="addSelectOption( option , option.id , option.selectedOption , post.formOption , post.new_price )" ng-options="attr as attr.text for attr in option.options" ></select>
</div>
<div ng-if="option.variation == 'no' || !option.variation">
<select ng-model="option.selectedOption" ng-change="addSelectOption( option , '', option.selectedOption , post.formOption , post.new_price )" ng-options="attr as attr.text for attr in option.options" >
<option value="">Please select</option>
</select>
</div>
</div>
</div>
只有2种选择,所以我想强制第一种选择(“正常”)。
1)有可能吗?
2)你能告诉我如何从我在这里展示的代码中做到这一点吗?
我非常渴望得到这方面的帮助......
答案 0 :(得分:0)
在这种情况下,一个更好的解决方案是使用ajax并禁用提交按钮,除非从下拉菜单中选择除“请选择”之外的任何选项。你可以通过ajax轻松实现这一目标。
如果这可以解决您的问题,请告诉我。
答案 1 :(得分:0)
因为您使用的是Angularjs。
只需定义模型
option.selectedOption = 'normal'
默认情况下。