PHP是伺服器端程式碼 ,html是客戶端程式碼,實作button的onclick事件,就是客戶端呼叫伺服器端函數,因此就得向伺服器提交請求。
有一個簡單粗暴的方式,就是button是a標籤時,可以直接在href裡面寫上要執行的php頁面(或是透過給button綁定window.location透過JS跳到PHP)。這種做法就得為每一個button設計一個PHP程式碼。
而我的做法是:事件 ajax 給予button綁定點擊事件,然後執行ajax。
範例:
server.php
<?php if (isset($_POST['action'])) { switch($_POST['action']) { case "btn1":btn1();break; case "btn2":btn2();break; default:break; } } function btn1() { echo "hello 按钮1"; } function btn2() { echo "hello 按钮2"; } ?>
index.php
<html> <head> <style> div {width:600px;margin:200px auto;} .btn { background-color:#44c767; -moz-border-radius:28px; -webkit-border-radius:28px; border-radius:28px; border:1px solid #18ab29; display:inline-block; cursor:pointer; color:#ffffff; font-family:Arial; font-size:17px; padding:16px 31px; text-decoration:none; text-shadow:0px 1px 0px #2f6627; } .btn:hover { background-color:#5cbf2a; } .btn:active { position:relative; top:1px; } #btn2 {float:right;} </style> <script type="text/javascript" language="javascript" src="jquery.js"></script> <script type="text/javascript" language="javascript"> function fun(n) { $.ajax({ url:"server.php", //the page containing php script type: "POST", //request type data:{action: n.value}, success:function(result){ alert(result); } }); } function fun2(n) { var url = "server.php"; var data = { action : n.value }; jQuery.post(url, data, callback); } function callback(data) { alert(data); } </script> </head> <body> <div> <button type="button" class="btn" id="btn1" οnclick="fun(this)" value="btn1">按钮1</button> <button type="button" class="btn" id="btn2" οnclick="fun2(this)" value="btn2">按钮2</button> </div> </body> </html>
推薦教學:php教學
以上是php中如何回應button的onclick事件的詳細內容。更多資訊請關注PHP中文網其他相關文章!