JavaScript

超轻量级php框架startmvc

js使用ajax传值给后台,后台返回字符串处理方法

更新时间:2020-07-19 22:12:01 作者:startmvc
之前使用js获取后台生成的JSON字符串,然后给select填充值,这次需要重新获取一次。这里的

之前使用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传值给后台,后台返回字符串处理方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

js ajax 返回 字符串