js使用ajax传值给后台,后台返回字符串处理方法
程序员文章站
2022-03-17 09:27:19
之前使用js获取后台生成的json字符串,然后给select填充值,这次需要重新获取一次。
这里的目标是,在一个input输入框里,输入一个用户名,判断是否为空,是否不存...
之前使用js获取后台生成的json字符串,然后给select填充值,这次需要重新获取一次。
这里的目标是,在一个input输入框里,输入一个用户名,判断是否为空,是否不存在,如果存在返回几个字段给前台,前台再绑定到其他input上
直接垒代码
html页面
<code class="language-html"><input type="text" id="iusername" runat="server" onblur="tbox_click()"/> <input id="inadd" runat="server" type="text" /> <input id="intel" runat="server" type="text" /></code>
js
<script> function tbox_click() { var cc = document.getelementbyid("iusername").value; var jsonob = {tbname:cc}; $.ajax({ type: "post", url: "tc.aspx/tbclick", contenttype: "application/json; charset=utf-8", datatype: "text", data: json.stringify(jsonob), success: function (data) { var a = eval("(" + data + ")"); var al = a.d; if (al == "namenull") { alert("the user name does not exist. please re-enter it(该用户名不存在,请重新输入)"); return; } if (al == "null") { alert("please input obtusername(请输入用户名)"); return; } //alert(a.d); var myd = new array(); myd = a.d.split("|"); $("#intel").val(myd[0]); $("#inadd").val(myd[1]); }, error: function (e) { alert(e.message); } }); } </script>
后台
[webmethod] public static string tbclick(string tbname) { if (tbname.trim() == "") { return "null"; } var user = new user(tbname.trim());//这个是根据tbname从数据库中获取信息的方法,可以自行填写 if (user.username == null) { return "namenull"; } string jsontext = user.mobile+"|"+user.address; return jsontext; }
这里重点说一下和之前的那个的区别,之前的有个函数,返回值是已经处理成json格式的字符串,这里的返回值则不是,所以在js里的处理不一样,原来的方式是
var aa = eval("(" + data.d + ")"); alert(aa);
这里则是
var a = eval("(" + data + ")"); alert(a.d);
此一时彼一时也,这个问题找了好久才发现。
以上这篇js使用ajax传值给后台,后台返回字符串处理方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。