本篇文章給大家帶來的內容是關於tp5架構ajax非同步添加資料的代碼實現,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所協助。
ajax非同步無重新整理處理資料的使用者體驗還是不錯的,在我們的項目開發中算是經常使用到的一個知識點。所以做成了ajax非同步添加,我們平常用到的可能都是ajax非同步刪除、非同步修改,非同步添加可能稍微少點,下面看看我們的處理邏輯和核心代碼吧。
這是我們資料添加的介面:
前端js代碼如下:
[js]<script type="text/javascript"> function adddhm(){ var oid=$("input[name='oid']").val(); var uname=$("input[name='uname']").val(); var dhm=$("input[name='dhm']").val(); var _class=$("select[name='class']").val(); var otime=$("input[name='otime']").val(); if(!oid){ alert('訂單號不可為空!'); return false; } if(!uname){ alert('使用者名稱不可為空!'); return false; } if(!dhm){ alert('兌換碼不可為空!'); return false; } if(!_class){ alert('適用課程不可為空!'); return false; } if(!otime){ alert('下單時間不可為空!'); return false; } $.ajax({ type:"POST", data:{oid:oid,uname:uname,dhm:dhm,class:_class,otime:otime}, url:"{:url('add')}", success:function(data){ alert(data.msg); } }); $("#myform")[0].reset() ; return false; } </script>[/js]
下面是我們接受到資料後的添加邏輯:
[php] public function add() { if(request()->isPost()){ $_data=input('post.'); $data=array(); foreach ($_data as $k => $v) { $data[$k]=trim($v); } $validate = validate('dhm'); if(!$validate->check($data)){ $msg=$validate->getError(); return json(['error'=>2,'msg'=>$msg]); } $add=db('dhm')->insert($data); if($add){ return json(['error'=>0,'msg'=>'添加成功!']); }else{ return json(['error'=>1,'msg'=>'添加失敗,請重新添加!']); } return; } return view(); }[/php]