首頁 >後端開發 >php教程 >為什麼發送ajax請求頁面也會刷新呢?

為什麼發送ajax請求頁面也會刷新呢?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB原創
2016-09-19 09:16:381526瀏覽

<code><button class="btn btn-default" onclick="set_chat_msg()">send</button></code>

點擊按鈕觸發函數

set_chat_msg()部分:

<code>var url= "chat_send_ajax.php";
url += "?name=" + strname + "&msg=" + strmsg;//将用户名和消息变量拼接进url中
oxmlHttpSend.open("GET",url,true);//打开请求
oxmlHttpSend.send(null);//发送
//alert(oxmlHttpSend);//为什么在firefox下不注释这里php就无法接收到数据执行呢?chrome是正常的</code>

然後就是php接收到進行處理。

為什麼我點擊按鈕後頁面會被刷新一次呢?然後如果是在firefox下php根本接收不到資料也不執行了,chrome就可以。

回覆內容:

<code><button class="btn btn-default" onclick="set_chat_msg()">send</button></code>

點擊按鈕觸發函數

set_chat_msg()部分:

<code>var url= "chat_send_ajax.php";
url += "?name=" + strname + "&msg=" + strmsg;//将用户名和消息变量拼接进url中
oxmlHttpSend.open("GET",url,true);//打开请求
oxmlHttpSend.send(null);//发送
//alert(oxmlHttpSend);//为什么在firefox下不注释这里php就无法接收到数据执行呢?chrome是正常的</code>

然後就是php接收到進行處理。

為什麼我點擊按鈕後頁面會被刷新一次呢?然後如果是在firefox下php根本接收不到資料也不執行了,chrome就可以。

只要在<form></form>標籤內,一定要明確指定<button></button>的類型,記得給<button></button>加上type="button"type="submit",說多多了都是淚~

button 標籤請新增 type='button' 屬性,因為瀏覽器預設會認為 button 的屬性是submit.type=‘submit’時會發生提交表單的預設行為。

<code><button type='button' class="btn btn-default" onclick="set_chat_msg()">send</button></code>

W3shool:

請務必為按鈕規定 type 屬性。 Internet Explorer 的預設類型是 "button",而其他瀏覽器中(包括 W3C 規範)的預設值是 "submit"。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn