//方法
public function returnAjax(){
//动态验证不依赖模型类的定义,所以通常用M函数实例化模型就可以
//$test = D("Home/Test");
$test = M("Test");
$rule = array(
array("username","require","用户名不能为空或已存在",0,"unique",1),
array("age","number","年龄必须是数字"),
array("click","number","必须是数字"),
);
$data['username'] = I("post.username","","htmlspecialchars");
$data['click'] = I("post.click","","htmlspecialchars");
$data['age'] = I("post.age","","htmlspecialchars");
if (! $test->validate($rule)->create($data)) {
$mesg = $test->geterror();
$this->ajaxReturn($mesg);
} else {
$tt = $test->add(); //返回ID
if(!!$tt){
$this->ajaxReturn("提交成功");
}else{
$this->ajaxReturn("提交失败");
}
}
}静态页面<form class="form-horizontal">
<div class="form-group">
<label for="" class="col-md-3 control-label">姓名:</label>
<div class="col-md-9"><input type="text" class="form-control" name="username" value="1"></div>
</div>
<div class="form-group">
<label for="" class="col-md-3 control-label">年龄:</label>
<div class="col-md-9"><input type="text" class="form-control" name="age" value="18"></div>
</div>
<div class="form-group">
<label for="" class="col-md-3 control-label">点击:</label>
<div class="col-md-9"><input type="text" class="form-control" name="click" value="55"></div>
</div>
<div class="form-group text-right">
<botton type="submit" class="btn btn-success">提交</botton>
</div>
</form>JS脚本+jQuery(function(){
var username = jQuery("input[name=username]");
var age = jQuery("input[name=age]");
var click = jQuery("input[name=click]");
var btn = jQuery(".btn");
btn.on("click",function(){
_this = jQuery(this);
jQuery.ajax({
url:"{:U('Test/returnAjax','','')}",
type:'post',
dataType:'json',
cache:false,
data:{
'age':age.val(),
'click':click.val(),
'username':username.val()
},
beforeSend:function(){
_this.html("数据加载中....");
},
success:function(data){
alert(data);
},
error:function(data){
alert(data);
},
complete:function(){
_this.html("提交");
}
});
});
});测试数据姓名:'|\select * from baidu_test2\"\'
年龄:1
点击:1
结果就是有时候居然还可以添加

最佳答案