2022-09-27 10:22:11 - 米境通跨境电商
时间组件验证
第一种方法:
如果页面只有一个data类型的组件,可以通过类型对这个组件进行处理。
找到工程目录下的wwwopencart2.0.1.1catalogcontrollercheckout下的cart.php这文件,找到add()方法。
OpenCart关于时间组件、输入框的验证.jpg
如图所示,在add()方法中foreach中把添加红线区域代码,也就是下边一个判断。
if($product_option['type']=='date'){//如果为data日期时的处理方法,这部分判断可根据需求来写}
蓝线区域中用黑色线画出的那句话,是把处理后要显示的提示的信息显示到前台页面相应的组件下边,前台页面提示如下图所示
$json['error']['option'][$product_option['product_option_id']]="要提示的信息";
OpenCart关于时间组件、输入框的验证2.png
第二种方法:
如果页面有多个data类型组件就没办法只通过类型来判断了,这时候我们需要通过名字来判断,这个名字就是我们在option里配置的插件的名称。也是在页面是显示出来的名称。
如下图所示:红线部分为opention在页面上显示的名称。
OpenCart关于时间组件、输入框的验证3.png
同样找到工程目录下的wwwopencart2.0.1.1catalogcontrollercheckout下的cart.php这文件,找到add()方法。
OpenCart关于时间组件、输入框的验证4.png
同样在foreach下进行判断处理,具体操作如图中红线框框里,现在对红线内代码进行解释。
if($product_option['name']=='endData'){}
if($product_option['name']=='starData'){}
这两个判断是通过opention的名称来判断,'endData','starData'这两个变量和页面显示的名称需要一致。
判断里边的内容是自己对时间组件根据自己的要求进行处理,然后把提示信息显示到页面上,这部分和第一种方法一样。
第三种方法:
这种方法是在时间组件上进行限制,opencart用的时间组件是datetimepicker这个jquery时间组件,可以在选择时间的时候直接进行限制,让用户只能选择一段时间内的时间,这种方法,我没有研究具体的如何操作。