ajax向后台传递参数-动态组织json串

ajax提交json格式的本质是提交了如下格式的参数:"&name=123&password=456",而且这种格式下,name和passowrd都可以是变量赋值,但是使用{“name”:value}格式的话,这里的name是不能为变量的,只有value可以是变量。

1、index.jsp

<form action="<%=basePath%>register/register.action" method="post" id="formid">
		用户名:<input type="text" name="userName" id="userName" class="mark"/><br /> 
		<input type="submit" value="提交" /><br />
	</form>


2、register.js

$(function(){
	//我们不知道name或者id ,只通过class获取元素的id和name以及value,动态获取这些值的话,不能使用{变量:变量}提交,只能使用"&"+变量1+"="+变量2的形式,因为ajax仅支持 {"常量":变量}的json格式
	$(".mark").blur(function(){checkUserName2(this)});
});

//提交表单的ajax
function checkUserName2(theid){
	
	//data="&"+id+"="+value是ajax的本质模式,这里id是一个变量,比如 id="userName",等同于 data={userName:value}={'userName':value},二者 的区别是{}中的key不能为变量
	//var data="&"+id+"="+value;
	var data=gainJson(theid);
	
		$.ajax({
			url : "register/checkUserName.action",// 请求地址
			//timeout : 600000,//超时时间设置,单位毫秒
			async : false,// 异步
			cache : false,// 缓存
			type : 'post',// 请求方式
			/*data: $('#formid').serialize(),//序列化表单*/			
			data:data,						
			dataType : 'json',// 服务器返回的数据类型
			contentType:"application/x-www-form-urlencoded; charset=utf-8",
			success : function(msg) {// 请求成功后调用的
				if(msg.result=="true"){
					//去除非法提示
					alert("true");
				}else{
					//增加非法提示
					alert("false");
				}
			
			},
			
			error :function(){
			alert("异常");
			}
		});

	};

	//获取id和值的公共方法,返回json格式
	function gainJson(theid){
		var id=$(theid).attr("id");
		var value=$("#"+id+"").val();
		var str="&"+id+"="+value;
		return str;
	}




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值