javascript和使用php调节 第一个问题

javascript和使用php调节 第一个问题,javascript,php,conditional,Javascript,Php,Conditional,我想使用变量don\u设置[don\u btn\u act](=复选框)来定义按钮操作 IF don_settings[don_btn_act] IS on THEN -> load checkout ELSE -> page reload don\u settings[don\u btn\u act]已定义,并进行了很好的修改,因此我可以打开或关闭它。问题是我应该在javascript中使用它 到目前为止,我所拥有的: function reloadpage(){ <?

我想使用变量
don\u设置[don\u btn\u act]
(=复选框)来定义按钮操作

IF don_settings[don_btn_act] IS on
THEN -> load checkout
ELSE -> page reload
don\u settings[don\u btn\u act]
已定义,并进行了很好的修改,因此我可以打开或关闭它。问题是我应该在javascript中使用它

到目前为止,我所拥有的:

function reloadpage(){
  <?php if(isset($don_config['don_btn_act']) && $don_config['don_btn_act'] =='on') { ?>
    window.location.href = 'index.php?route=dcheckout/checkout';
  <?php } else { ?>
    window.location.reload();
  <?php } ?>    
}
function validation(){
    if(jQuery('#opton').val() == ''){
        alert("<?php echo $drop_empty_msg; ?>");
        return false;
    }
    else if(jQuery('#don_amount').val() == '' || jQuery('#don_amount').val() == '0'){
        alert("<?php echo $amount_empty; ?>");
        jQuery('#don_amount').focus();
        return false;
    }
    else{
        return true;
    }
}
我用

|| jQuery('#don_amount').val() <= "<?php $don_settings[min_amount]; ?>"

但是每次它都返回false

对不起,我无法理解您的问题或您的意图。试着纠正你的拼写错误、语法错误,请注意漂亮的格式化代码

尽管如此,对于编写可维护代码,我还是有一些建议

你的问题(#1) 如果您的浏览器总是执行
window.location.reload()
,则问题不在于您的javascript失败的是您的服务器端代码。您的以下情况似乎是错误的:

<?php if(isset($don_config['don_btn_act']) && $don_config['don_btn_act'] =='on') { ?>

不要把javascript和php混为一谈 首先,计算必要的值/条件:
(最好放在单独的文件中)


现在,您可以非常舒适和清晰地使用它:

function reloadpage() {
  var condition = '<?php echo $condition; ?>';

  if (condition)
    window.location.href = 'index.php?route=dcheckout/checkout';
  else
    window.location.reload();
}
函数重载页面(){
var条件=“”;
如果(条件)
window.location.href='index.php?route=dcheckout/checkout';
其他的
window.location.reload();
}
不弄乱代码有很多好处

也要小心。。。
。。。通过php向标记/javascript注入代码时。不要为潜在攻击者提供新的安全漏洞

选中复选框时是否需要重新加载页面选中复选框时否我需要运行:window.location.href='index.php?route=dcheckout/checkout';如果不是,我需要运行:window.location.reload();这两个命令都可以正常工作,但条件作用不起作用。主要问题是如何在脚本部分声明和使用$don_config['don_btn_act'])。首先,对不起,我的英语不好。谢谢,你不必为此道歉。没有人是完美的;)谢谢。我只是在代码中添加了“var条件=”;一切都很顺利
<?php
  $condition = isset($don_config['don_btn_act']) && $don_config['don_btn_act'] =='on';
?>
function reloadpage() {
  var condition = '<?php echo $condition; ?>';

  if (condition)
    window.location.href = 'index.php?route=dcheckout/checkout';
  else
    window.location.reload();
}