現在比較流行使用jquery的ajax來實現一些無刷新請求效果,本章節提供一個非常簡單的代碼實例供大家參考之用,希望能夠給需要的朋友帶來一定的幫助,代碼如下:
<script type="text/javascript"> /* 请求Ajax 带返回值,并弹出提示框提醒 --------------------------------------------------*/ function getAjax(url,parm,callBack) { $.ajax({ type:'post', dataType:"text", url:url, data:parm, cache:false, async:false, success:function (msg) { callBack(msg); } }) } /*删除 /*url: 表示请求路径 --------------------------------------------------*/ function DeleteData(url,id) { var parm='active=Del&id='+id; if(id==undefined||id=="") { showAlertMsg('请选择要删除一行'); } else { showConfirmMsg("此操作不可恢复,确定要删除吗?",function(r){ if(r) { getAjax(url,parm,function(rs) { if(parseInt(rs)>0) { showOverAlertMsg("删除成功!",2000,4); } else if(parseInt(rs) == 0) { showOverAlertMsg("该数据被关联,无法删除!",2000,3); } else { showOverAlertMsg("删除失败!", 2000, 5); } }) } }) } } //删除 function DeleteOnclick() { DeleteData('SysMenu_List.aspx', Menu_Id); } </script>
async是asynchronous[非同步]的縮寫,它是一個bool值預設為true。當async為true時,先不管ajax請求是否完成都要向下執行。同步請求要暫時鎖定瀏覽器,當請求正在執行時不執行任何動作。
描述下這兩天要實現的功能,判斷一個資料資料庫裡是否存在,如果存在就回傳錯誤,不存在就可以填寫並提交。程式碼如下:
isCompany :function(name){ var flag = 0; if(name == '') { return false; }else{ $.ajax({ type: "POST", url: '/checkCompany/name/' + name, cache: false, success: function(data){ return data > 0 ? false : true; } }) } }
透過上面的程式碼,一直無法正確的反應資料庫裡是否已經有了這個名字。透過下了個全域變量,將async(預設為true)非同步改成同步,就順利得到了ajax的回傳值。程式碼如下
isCompany :function(name){ var flag = 0; if(name == '') { return false; }else{ $.ajax({ type: "POST", url: '/checkName/name/' + name, cache: false, async: false, success: function(data){ flag = data; } }) } return flag > 0 ? false : true; }
以上就是利用jquery中的ajax提交數據然後由網站後台來根據我們提交的數據返回數據的內容了,希望對大家學習ajax有所幫助。