javascript并使用php调节

时间:2014-01-20 14:23:16

标签: javascript php conditional

第一个问题

我想使用变量don_settings[don_btn_act](=复选框)来定义按钮操作。

IF don_settings[don_btn_act] IS on
THEN -> load checkout
ELSE -> page reload

don_settings[don_btn_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 } ?>    
}

始终执行window.location.reload()功能。

第二个问题

以与变量don_settings[min_amount]相同的方式。我用它来定义最小输入量 它在PHP中定义,就像之前的变量一样。 但我也应该在tpl文件的javascript部分使用它。

到目前为止我所拥有的:

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]; ?>"

保证

|| jQuery('#don_amount').val() == '0'

但每次都返回false

1 个答案:

答案 0 :(得分:0)

抱歉,我无法理解您的问题或您的意图。尝试纠正拼写错误,语法错误,请注意漂亮的格式化代码!

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

您的问题(#1)

如果您的浏览器始终执行window.location.reload(),则问题不会引用您的javascript。 您的服务器端代码失败。您的以下情况似乎是错误的:

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

不要混淆你的javascript和php

  首先,计算您的必要价值/条件:
  (最好是分开的文件)

<?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();
}

有很多很大的好处,不会弄乱你的代码。

还要小心......

...同时通过php将代码注入标记/ javascript。不要为潜在的攻击者提供新的安全漏洞!