相信是大多数模板都有的BUG(已解决)

2016-07-07 16:35 来源:www.chinab4c.com 作者:ecshop专家

在购物流程里面,当你选择了支持货到付款的配送方式,并且支付方式选择了货到付款。然后你想换一种配送方式(此配送方式不支持货到付款),此时支付方式里面的货到付款会变成不可选状态,并且不会选中任何支付方式。按正常情况下,此时提交定单会提示要选择支付方式。但是此时你仍然可以提交定单,因为默认支付方式为你之前选的货到付款,此时定单是提交了,但是会出现错误页面。


解决方法见5楼。


回答:
BUG已经记录

数据表里面好象有一个字段时定义能否货到付款的,上次改过一次

就是用了一个flow的文件作了太多的 if 的原因吧,有点太死板了,做模板也很麻烦,以后代码维护会很难,换个人都要熟悉半天。

建议作成特征字方便的哦

case

case

case

将flow.dwt文件里面的以下代码:
  1. <!-- {foreach from=$payment_list item=payment key=key} 循环支付方式 -->
  2. <tr>
  3. <td>
  4. <input name="payment" type="radio" value="{$payment.pay_id}"{if $order.pay_id eq $payment.pay_id} checked="checked"{/if} isCod="{$payment.is_cod}" onclick="selectPayment(this)"{if $cod_disabled and $payment.is_cod eq "1"} disabled="disabled"{/if} id="payment{$key}" />
  5. </td>
  6. <td><label for="payment{$key}">{$payment.pay_name}</label></td>
  7. <td>{$payment.pay_desc}</td>
  8. <td>{$payment.format_pay_fee}</td>
  9. </tr>
  10. <!-- {/foreach} 循环支付方式 -->
复制代码
修改为:
  1. <!-- {foreach from=$payment_list item=payment key=key} 循环支付方式 -->
  2. <tr>
  3. <td>
  4. <input name="payment" type="radio" value="{$payment.pay_id}"{if $order.pay_id eq $payment.pay_id and not($cod_disabled and $payment.is_cod eq "1")} checked="checked"{/if} isCod="{$payment.is_cod}" onclick="selectPayment(this)"{if $cod_disabled and $payment.is_cod eq "1"} disabled="disabled"{/if} id="payment{$key}" />
  5. </td>
  6. <td><label for="payment{$key}">{$payment.pay_name}</label></td>
  7. <td>{$payment.pay_desc}</td>
  8. <td>{$payment.format_pay_fee}</td>
  9. </tr>
  10. <!-- {/foreach} 循环支付方式 -->
复制代码

增加了以下代码,其余不变。
  1. and not($cod_disabled and $payment.is_cod eq "1")
复制代码


购物流程问题