2022-09-27 10:22:11 - 米境通跨境電商
時間組件驗證
第一種方法:
如果頁面只有一個data類型的組件,可以通過類型對這個組件進行處理。
找到工程目錄下的wwwopencart2.0.1.1catalogcontrollercheckout下的cart.php這文件,找到add()方法。
OpenCart關于時間組件、輸入框的驗證.jpg
如圖所示,在add()方法中foreach中把添加紅線區(qū)域代碼,也就是下邊一個判斷。
if($product_option['type']=='date'){//如果為data日期時的處理方法,這部分判斷可根據(jù)需求來寫}
藍線區(qū)域中用黑色線畫出的那句話,是把處理后要顯示的提示的信息顯示到前臺頁面相應的組件下邊,前臺頁面提示如下圖所示
$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下進行判斷處理,具體操作如圖中紅線框框里,現(xiàn)在對紅線內(nèi)代碼進行解釋。
if($product_option['name']=='endData'){}
if($product_option['name']=='starData'){}
這兩個判斷是通過opention的名稱來判斷,'endData','starData'這兩個變量和頁面顯示的名稱需要一致。
判斷里邊的內(nèi)容是自己對時間組件根據(jù)自己的要求進行處理,然后把提示信息顯示到頁面上,這部分和第一種方法一樣。
第三種方法:
這種方法是在時間組件上進行限制,opencart用的時間組件是datetimepicker這個jquery時間組件,可以在選擇時間的時候直接進行限制,讓用戶只能選擇一段時間內(nèi)的時間,這種方法,我沒有研究具體的如何操作。