• Ajax异步传值用法示例


    转自:http://www.cnblogs.com/ereryday/archive/2011/11/23/2260356.html

    Ajax异步传值用法示例

    1.前端页面包含脚本(ajax)和基本的HTML标记 以方便大家对应查找和理解

    <script language="javascript">    

        function addclick() {                                        //点击触发addclick事件
                    var txtuserName = $("#txtuserName").val();//用jquery获取id为txtuserName的页面标记的value,存放在txtuserName变量里
                    $.ajax({
                        type: "POST",                                         //ajax的方式为post(get方式对传送数据长度有限制)
                        url: "/AjaxRequest/AddUser.ashx",           //一般处理程序页面AddUser.ashx(在2中会写出该页面内容)
                        dataType: "json",                                   //数据传回的格式为json
                        data: { adduserName: txtuserName},       //要传送的数据键值对adduserName为键(方便2中的文件用此名称接受数据)txtuserName为值(要传递的变量,例如用户名)
                        success: function (data) {                       //成功回传值后触发的方法
                            if (data != null && data.IS != "") {        //如果回传的json不为null或json中的IS键对应的值不为空,则触发一下代码,否则弹出“请重新尝试”
                                if (data.IS == "-1") {                      //如果json中的IS键对应的值为-1,则说明用户名已在数据库中存在
                                    alert("添加失败!该名已存在!");
                                }
                                else if (data.IS == "0") {                 //json中的IS键对应的值为0,则说明用户名没有添加成功
                                    alert("添加失败!");
                                }
                                else if (data.IS == "-2") {               //json中的IS键对应的值为-2,则说明数据库返回的主键列不能转换成INT32类型
                                    alert("数据库连接失败或访问失败!");
                                }
                                else {
                                    alert("添加成功!");
                                    $("#txtuserName").val("");
                                }
                            }
                            else {
                                alert("请重新尝试!");
                            }
                        }
                    })
                }
    </script>

    <body>

      <h2>

        <input id="txtuserName" name="" size="26" >

      </h2>

      <input type="button"  value="提交" onclick="addclick()"/>

    </body>

     

    2.一般处理程序,即接受1中Ajax传来的值并传入BLL层

             public void ProcessRequest(HttpContext context)

            {

                context.Response.ContentType = "text/plain";

                int model = new BLL.User().AddUser(context.Request["adduserName"]);  //通过context.Request获取1中Ajax里的data:中键值对的键名来得到用户名txtuserName并传入BLL层

                context.Response.Write("{\"IS\":\""+model+"\"}");                                //拼接json对象(键值对)model为运行存储过程后返回的数字

            }

  • 相关阅读:
    详细介绍C++STL:unordered_map
    NYOJ-626-intersection set(二分查找)
    hdoj-2141-Can you find it?(二分查找)
    HDU-1232-畅通工程(并查集)
    HDU-1213-How Many Tables(并查集)
    hdoj-2647-Reward(拓扑排序)
    hdoj-3342-Legal or Not(拓扑排序)
    hdoj-1285-确定比赛名次(拓扑排序)
    来一些方便的小操作:博客园(cnblog)自定义界面
    POJ--1094--Sorting It All Out||NYOJ--349--Sorting It All Out(拓扑排序)
  • 原文地址:https://www.cnblogs.com/lyl2001431/p/2297850.html
Copyright © 2020-2023  润新知