Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何延迟表格提交预售_Javascript_Php_Ajax_Prestashop_Prestashop 1.7 - Fatal编程技术网

Javascript 如何延迟表格提交预售

Javascript 如何延迟表格提交预售,javascript,php,ajax,prestashop,prestashop-1.7,Javascript,Php,Ajax,Prestashop,Prestashop 1.7,我正在开发prestashop carrier模块。在我的carrier中,我有两个单选按钮(现在,时间表) 当用户选择nowi时,我获取当前日期时间。当用户选择schedule时,我提示日历选择日期时间 问题: 当用户选择其中一个单选按钮时,表单将立即提交。但我希望表单等待用户从日历中选择日期 我如何延迟提交表格 <form class="clearfix" id="js-delivery" data-url-update="{url entity='order' params=['aj

我正在开发prestashop carrier模块。在我的carrier中,我有两个单选按钮(
现在
时间表
) 当用户选择
now
i时,我获取当前日期时间。当用户选择schedule时,我提示日历选择日期时间

问题:

当用户选择其中一个单选按钮时,表单将立即提交。但我希望表单等待用户从日历中选择日期

我如何延迟提交表格

<form class="clearfix" id="js-delivery" data-url-update="{url entity='order' params=['ajax' => 1, 'action' => 'selectDeliveryOption']}" method="post">   
  <button type="submit" class="continue btn btn-primary pull-xs-right" name="confirmDeliveryOption" value="1">
      {l s='Continue' d='Shop.Theme.Actions'}
  </button>
</form> 

{l s='Continue'd='Shop.Theme.Actions'}

您需要截取表单提交事件并选中复选框,然后如果需要时间选择器返回false以延迟表单提交,或者返回true以继续提交

document.querySelector("#js-delivery").addEventListener("submit", function(e){
    var isValid = "[write your delay clause]"
    if(!isValid){
        e.preventDefault();    //stop form from submitting
        return false;
    }
    return true;
});

您需要截获表单提交事件并检查复选框,然后如果需要时间选择器返回false以延迟表单提交,或者返回true以继续提交

document.querySelector("#js-delivery").addEventListener("submit", function(e){
    var isValid = "[write your delay clause]"
    if(!isValid){
        e.preventDefault();    //stop form from submitting
        return false;
    }
    return true;
});

您需要拦截表单提交事件并选中复选框,然后如果需要时间选择器返回false以延迟表单提交,或者返回true以继续提交。您需要拦截表单提交事件并选中复选框,然后如果需要时间选择器返回false以延迟表单提交,或者返回true以继续提交。