jquery插件formValidator的ajaxValidator传参数问题

jonny706 2010-07-15 01:16:12
$("#ClientSerialNo").formValidator
({onshow:"请输入编号",onempty:"编号不能为空"})
//.inputValidator({min:2,max:20,onerror:"长度错误"})
.ajaxValidator({
type:"get",
url:"<?php echo base_url();?>BM/psMag/get_clientinfo",
data:{ClientSerialNo:$("#ClientSerialNo").val()},//'ClientSerialNo=1&SerialNo=2',
datatype:"html",
success:function(msg)
{
alert(msg);
//if(escape(msg)=="0") {return true;}
//else{return false;}
}
请教各位,如果我要传多个参数到php后台,应该怎样做?
我的做法,如果data后面写成'ClientSerialNo=1&SerialNo=2'是可以的,后台能取到2个值;
如果写成data:{ClientSerialNo:$("#ClientSerialNo").val(),SerialNo:$("#SerialNo").val()}},后台只能获得当前校验的值,如果我想同时传递表单的其他一个input值应该怎么做呢?还是被限制了?谢谢!
...全文
3960 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
这个问题根据楼上老兄的方法做了改进,问题解决:

$("#typeId").formValidator({onShow:"请选择产品分类",onFocus:"请选择产品分类",onCorrect:"产品分类已选择"}).inputValidator({min:1,onError: "必须选择产品分类"});
		
$("#productModel").formValidator({onShow:"请输入产品型号", onFocus:"请输入非空字符", onCorrect:"产品型号输入正确"}).regexValidator({regExp:"notempty",dataType:"enum",onError:"输入的产品型号格式不正确"}).inputValidator({min:3, max:30, onError:"输入的产品型号长度不正确"}).ajaxValidator({
			type:"post",
		   	dataType: "html",
		   	async: false,
			url: basePath + "product/verifyProModel.do",
			data:{"pro.typeId" : function(){return $("#typeId").val();}},//注:此处本来的需要验证的属性值就不用传值了,否则会出现重复值
			success : function(data){
				if(data == "0") return true;
				return "该产品型号已存在,请更换产品型号";
			},
			buttons: $("#button1"),
			error: function(jqXHR, textStatus, errorThrown){$.dialog.alert("服务器未响应,请重试"+errorThrown, function(){});},
			onError: "该产品型号不可用,请更换产品型号",
			onWait: "正在进行合法性校验,请稍候..."
		});
==================================================

<s:select list="proTypeList" id="typeId" name="pro.typeId" listKey="id" listValue="typeName" ></s:select>
<s:textfield name="pro.productModel" id="productModel" ></s:textfield>
fschangxin 2012-10-31
  • 打赏
  • 举报
回复
这个问题可以这样解决:
data:{"diyUserCollocate.id":function(){
return _this.val();
},
"diyUserCollocate.type" : function(){
return _this.attr("name").split("_")[1];
}
}
lgzxz999 2012-09-21
  • 打赏
  • 举报
回复

$.formValidator.initConfig({formID:"myform",debug:false,submitOnce:false,
ajaxObjects:'#data_customer_cate,#mid',

设置这个参数可以动态传值

看源代码这里

initConfig.ajaxObjects = ajax + (ajax != "" ? ",#" : "#") + this.id;
makeboluo1234 2012-05-12
  • 打赏
  • 举报
回复
遇到同样的问题。。。。纠结
JettyXie 2011-11-30
  • 打赏
  • 举报
回复
遇到同样的问题。。。。纠结
zhizouxiao 2011-10-27
  • 打赏
  • 举报
回复
遇到问题了,求解决
cdmsan 2011-08-23
  • 打赏
  • 举报
回复
GET取不到,试试POST
lr_fight 2011-08-21
  • 打赏
  • 举报
回复
纠结。。。。
wjnalk 2011-08-19
  • 打赏
  • 举报
回复
jQuery的ajax方法的contentType设为"application/json";再次,将jQuery的ajax方法的processData设为false;这样设置之后再WCF服务端就可以将参数反序列化为.NET对象了。

JSON.stringify方法将普通javascript对象转化为JSON数据字符串


$("#ClientSerialNo").formValidator
({onshow:"请输入编号",onempty:"编号不能为空"})
//.inputValidator({min:2,max:20,onerror:"长度错误"})
.ajaxValidator({
type:"get",
url:"<?php echo base_url();?>BM/psMag/get_clientinfo",
data:JSON.stringify({ClientSerialNo:$("#ClientSerialNo").val()}),//'ClientSerialNo=1&SerialNo=2',contentType: "application/json",
processData: false,success:function(msg)
{
alert(msg);
//if(escape(msg)=="0") {return true;}
//else{return false;}
}

oiniwi 2011-08-18
  • 打赏
  • 举报
回复
我也遇到同样的问题了,待解决
gufan5020 2011-02-25
  • 打赏
  • 举报
回复
我也想知道,lz找到解决办法了吗??
jonny706 2010-07-15
  • 打赏
  • 举报
回复
以上朋友都没看清问题,以上的建议我试过了不行的,这个不是用jquery的ajax,而是formValidator的ajaxValidator,改成post也不对。
kyzy_yy_pm 2010-07-15
  • 打赏
  • 举报
回复
那就将type:"get" 改成type:"post"
hoojo 2010-07-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 kyzy_yy_pm 的回复:]

继续向后排
data:{"ClientSerialNo":$("#ClientSerialNo").val(), "SerialNo":$("#SerialNo").val(), "xxx": "value"}
[/Quote]
post方式,可以在后面继续增加参数的
kyzy_yy_pm 2010-07-15
  • 打赏
  • 举报
回复
继续向后排
data:{"ClientSerialNo":$("#ClientSerialNo").val(), "SerialNo":$("#SerialNo").val(), "xxx": "value"}
jQuery formValidator表单验证插件示例源码 jQuery formValidator表单验证插件是什么? jQuery formValidator表单验证插件,它是基于jQuery类库,实现了js脚本于页面html代码的分离。你可以划分多个校验组,每个组的校验都是互不影响。对一个表单对象,你只需要写一行代码就可以轻松实现无种(理论上)脚本控制。目前支持5种大的校验方式,分别是:inputValidator(针对input、textarea、select控件的字符长度、值范围、选择个的控制)、compareValidator(提供2个对象的比较,目前可以比较字符串和值型)、ajaxValidator(通过ajax到服务器上做据校验)、regexValidator(提供可扩展的正则表达式库) 、functionValidator (可使用外部函来做校验) 本插件于其他校验控件最大的区别有3点: 1、校验功能可以扩展。 对中文、英文、字、整、实、Email地址格式、基于HTTP协议的网址格式、电话号码格式、手机号码格式、货币格式、邮政编码、身份证号码、QQ号码、日期等等这些控制,别的表单校验控件是代码里写死的,而formValidator是通过外部js文件来扩展的,你可以通过写正则表达式和函来无限的扩展这些功能。 2、实现了校验代码于html代码的完全分离。 你的所有信息都无需配置在校验表单元素上,你只要在js上配置你的信息。使美工(界面)和javascript工程师的工作不交织在一起 3、你只需写一行代码就能完成一个表单元素的所有校验。你只需要写一行代码就能完成一下所有的控制 支持所有类型客户端控件的校验 支持jQuery所有的选择器语法,只要控件有唯一ID和type属性 支持函和正则表达式的扩展。提供扩展库formValidatorReg.js,你可以自由的添加、修改里面的内容。 支持2种校验模式。第一种:文字提示(showword模式);第二种:弹出窗口提示(showalert模式) 支持多个校验组。如果一个页面有多个提交按钮,分别做不同得提交,提交前要做不同的校验,所以你得用到校验组的功能。 支持4种状态的信息提示功能,可以灵活的控制4种状态是否显示。第一种:刚打开网页的时候进行提示;第二种:获得焦点的时候进行提示;第三种:失去焦点时,校验成功时候的提示;第四种:失去焦点时,校验失败的错误提示。 支持自动构建提示层。可以进行精确的定位。 支持自定义错误提示信息。 支持控件的字符长度、值范围、选择个的控制。值范围支持值型和字符型;选择的个支持radio/checkbox/select三种控件 支持2个控件值的比较。目前可以比较字符串和值型。 支持服务器端校验。 支持输入格式的校验。

52,792

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧