取决于 phpvariable 的 JavaScript 代码

标签 javascript php jquery forms

我正在网上商店运行一个表单,如下所示:

<form>
  <input type="number" name="quantity" value="" required = "required" />
  <input type="radio" name="homeDelivery" value="" required = "required" checked="true" />
  <input type="radio" name="homeDelivery" value="" required = "required" />
  <input type="submit" value="buy" name="submitBuy" class="buy formConfirm" />
</form>

按下提交按钮后,我根据从 $_POST 获得的信息在 php 中运行一个简单的错误检查。我有一个名为 $errors 的数组,如果我的错误检查发现任何错误,它将它们添加到我的数组中,否则不会,如果数组直到最后都保持为空,我的表单将提交数据,否则不会。

但是,我确实希望在按下提交后有一个 JS 确认框,只有在实际表单中没有错误时才会弹出。所以对于我的实际问题: 如果我的 $errors 变量为空,是否可以检查 JavaScript 代码?像这样工作的东西:

if(empty($errors)) {
   //run code
}

如果可能的话,我希望我的 javascript 代码看起来像这样(我想你明白了);

$('.buyConfirm').on('click', function(){
   if (errors == NULL) {
      return confirm('Are you sure?');
   }
   else {
      return false;
   }
});

感谢任何帮助,

干杯!

最佳答案

您需要将 PHP var 输出为 JS 数组,最好使用 json_encode,然后在您的条件下使用它

<script>
    var errors = <?php echo json_encode($errors); ?>;
    if (errors.length < 1) {
        if (confirm("Are you sure?")) {
            // User has no errors and has confirmed
        } else {
            // User has no errors but did not confirm
        }
    } else {
        // User has errors
    }
</script>

关于取决于 phpvariable 的 JavaScript 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40286847/

相关文章:

javascript - Protractor 是否适用于 Angular Material 对话框弹出窗口?

javascript 回调在不可能的调用中被调用两次

php - 代码点火器 : Upload Video to YouTube

php - 拿起ZF2,现在值得吗?

PHP:处理内存和代码低内存使用

javascript - href 的目标选择器始终触发

javascript - Google 跟踪代码管理器导致页面表单提交两次

javascript - 如何在溢出 :hidden div 中滚动更大的 div

javascript - 如何让浏览器记住通过ajax和jquery生成的多选项卡分页内容中显示的最后一页?

php - 将 php 转换为 jQuery for XML?