Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
单击按钮后运行PHP代码,但不刷新页面_Php_Jquery_Forms_Button_Coupon - Fatal编程技术网

单击按钮后运行PHP代码,但不刷新页面

单击按钮后运行PHP代码,但不刷新页面,php,jquery,forms,button,coupon,Php,Jquery,Forms,Button,Coupon,我有一个HTML表单,可以将折扣券应用到当前的购物车上。 我希望用户只需点击APPLY(输入优惠券代码后),然后不刷新页面,运行一些PHP代码,以便计算相应的折扣 这是我的表格: <form action=""> <input type="text" name="couponCode"> <input type="submit" value="Apply"> </form> 如何使用javascript实现这一点?使用。完成后,根据需

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

这是我的表格:

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

如何使用javascript实现这一点?

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

您可以使用Jquery对PHP脚本进行AJAX发布,然后使用JS更改调用页面的内容


您需要使用表单的
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>

函数submitCupOnCode()
{
var textbox=document.getElementById(“耦合代码”);
变量url=
"https://www.example.com/script.php?couponCode=“+encodeURIComponent(textbox.value);
//获取URL
http=newXMLHttpRequest();
http.open(“GET”,url,true);
http.send(空);
//阻止表单提交
返回false;
}

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

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

<script>
  $("#MyButton").click( function(){
    $.post("somefile.php");
  });
</script>
点击我!
$(“#我的按钮”)。单击(函数(){
$.post(“somefile.php”);
});

1。你想听听ajax;2.你想知道不嵌套
if
块。@moonwave99嵌套的if块有什么问题?@Cristy它们喜欢使用布尔运算符/在可重用的子方法中拆分大型方法/使用约定而不是配置,等等。有时它们是需要的,但在这种情况下它们显然不是。你不需要一个
POST
,而是一个
GET
<button id="MyButton">Click Me!</button>

<script>
  $("#MyButton").click( function(){
    $.post("somefile.php");
  });
</script>