如何使用复选框将$ 1.00添加到$ amount

时间:2013-01-31 13:25:30

标签: php javascript jquery

我可以让$amount显示在页面上,但是在我收到错误告诉我需要添加一定数量的内容以便通过脚本运行

我只需要$amount$payment添加$donation,然后发布$amount

<label>Payment:</label>
<input name="payment" id="payment" class="small-field" value="<?php echo $payment;?>"   />
*
<div class="clr"></div>

<label>Donation:</label>
<input type="checkbox"  id="donation" name="donation" value="1.00"  />

<div class="clr"></div>

<?php echo $amount;?>

2 个答案:

答案 0 :(得分:2)

我认为你的意思是JavaScript(或jQuery包对你来说可能更容易)。

  1. 为复选框设置事件;
  2. 抓住复选框的值;
  3. 为值添加+1;
  4. 用新创建的值替换原始值;
  5. 如果我理解正确的话。 Here就是如何做到的一个例子。

    <html>
      <head>
        <title>Test page</title>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <meta name="author" content="Dainis Abols" />
        <script src="http://code.jquery.com/jquery-latest.js"></script>
      </head>
      <body>
    
        <input id="check2" type="checkbox" name="test" value="1">
        <div id="check1" style="float: left;">1.00</div>
    
        <!-- The event for checkbox with id 'check2' -->
        <script>
        $("#check2").click(function() {
            var value = $(this).val(); /* Catching value of checkbox */
            value++; /* Increasing value by one */
            $(this).val(value); /* Replacing original value */
            $(this).attr('checked', false); /* Removing CHECKED ( if needed ) */
            $('#check1').html(value + '.00'); /* Just for visual aid */
        });
        </script>
        <!-- End of event -->
    
      </body>
    </html>
    

答案 1 :(得分:0)

如果您不想使用html脚本更改某些php值,则需要一个表单将信息发布到服务器,或者使用ajax来执行此操作。

Php只在服务器端工作,您的HTML页面在客户端。两者都不相互影响。

我建议使用ajax在“实时”中执行此操作。像这样的东西: http://api.jquery.com/jQuery.ajax/

$(function () {
$("#payment").bind('change',function () {   
    if($(this).checked){
    $.ajax({
        type: "GET",
        url: "test.php",            
        success: function(){
            alert('value as incremented by 1');
        }
    });
    }
});

});