5

我有一个 HTML 表单,可以将折扣券应用于当前的购物车。我希望用户只需单击应用(输入优惠券代码后),然后不刷新页面,运行一些 PHP 代码,以便计算相应的折扣。

这是我的表格:

<form action="">
   <input type="text" name="couponCode">
   <input type="submit" value="Apply">
</form>

要运行的 PHP:

if (isset($_REQUEST['couponCode']) && $_REQUEST['couponCode']!='') 
{
 $couponCode = $_REQUEST['couponCode'];
    if ($couponCode == "TEST1") 
    {
    $discount=0.2;
    }
}

这将如何使用 javascript 完成?

4

4 回答 4

6

您需要使用onsubmit表单的onclick事件或按钮的事件。

在事件处理程序中,您组装一个 URL 并“获取”它。例如:

<script type="text/JavaScript">

function submitCouponCode()
{
    var textbox = document.getElementById("couponCode");
    var url =
        "https://www.example.com/script.php?couponCode=" + encodeURIComponent(textbox.value);

    // get the URL
    http = new XMLHttpRequest(); 
    http.open("GET", url, true);
    http.send(null);

    // prevent form from submitting
    return false;
}

</script>

<form action="" onsubmit="return submitCouponCode();">
   <input type="text" id="couponCode">
   <input type="submit" value="Apply">
</form>
于 2013-04-04T22:11:45.940 回答
2

使用jQuery AJAX。完成后,根据需要刷新页面。

于 2013-04-04T22:06:57.593 回答
2

您可以使用 Jquery 做一个 AJAX 发布您的 PHP 脚本,然后使用 JS 更改调用页面的内容。

http://api.jquery.com/jQuery.post/

于 2013-04-04T22:07:36.973 回答
1

使用 jQuery 很简单。你只需要使用正确的标签。如果您使用“a”标签,页面将刷新。

<button id="MyButton">Click Me!</button>

<script>
  $("#MyButton").click( function(){
    $.post("somefile.php");
  });
</script>
于 2015-10-26T21:08:45.163 回答