本文主要和大家介紹動態表單驗證的操作方法和TP架構裡面的ajax表單驗證問題,需要的朋友可以參考下,希望能協助到大家。
動態驗證的操作方法
function yz() { if(empty($_POST)) { $this->display(); } else { $db=D("Info"); $shu=array( array("Code","require","代號不可為空",0,"regex",3), ); if(!$db->validate($shu)->create()) { echo $db->getError(); } else { echo"驗證通過"; } } }
在架構裡用ajax來實現輸入代號顯示姓名 打到模板是用上面的
function ming() { $code=$_POST["code"]; $db=D("Info"); $data=$db->find($code); $name=$data["name"]; $this->ajaxReturn($name,"eval"); }
表單
代號:
<input id="zhi" type="text" name="Code" /><input type="submit" value="驗證" id="en" />
js代碼
<script type="text/javascript">$(document).ready(function(e){ $("#en").click(function(){ var code=$("#zhi").val(); $.ajax({ url:"__CONTROLLER__/ming", data:{code:code}, type:"POST", dataType:"TEXT", success: function(data){ alert(data); } }); }) $("#yz").blur(function(){ var code=$(this).val(); $.ajax({ url:"__CONTROLLER__/yan", data:{Code:code}, type:"POST", dataType:"TEXT", success: function(data){ if(data.trim() == "ok") { $("#xs").html("驗證通過!"); $("#xs").css("color","green"); } else { $("#xs").html(data); $("#xs").css("color","red"); } } }); }) });
頁面顯示
用ajax使表單驗證的錯誤資訊直接在後面顯示
function yan() { $db=D("Info"); $jieguo=""; $shu=array( array("Code","require","代號不可為空",0,"regex",3), ); if(!$db->validate($shu)->create()) { $jieguo= $db->getError(); } else { $jieguo="ok"; } $this->ajaxReturn($jieguo,"eval"); }
頁面顯示