Jquery Ajax取值和绑定写入数据库

1、解决IE兼容性显示问题

<meta http-equiv="X-UA-Compatible" content="IE=edge,11" />

2、绑定Jquery,取 ”工号“ 对应的控件ID   #DetailsView1_txtStaffNo,执行input写入方法,当工号输入到6位长度执行Ajax方法调用数据取回 ”姓名“,

返回的值绑定回 #DetailsView1_txtStaffName 和 #txt_staffname_hidden两个地方。

<script src="http://cdn.bootcss.com/jquery/3.0.0/jquery.min.js"></script>
    <script language="javascript" type="text/javascript">
        $(document).ready(function () {
            $(‘#DetailsView1_txtStaffNo‘).on(‘input‘, function () {
                var staffno = $(this).val();
                var stringStaffName;
                if (staffno.length == 6) {

                    $.ajax({
                        type: "POST",
                        url: "Sign.ashx",
                        data: { staffNo: staffno }, //要传递的数据
                        success: function (response) {
                            if (response == "isNotExist") {
                                alert("姓名和工号不存在,请重新输入,谢谢!");
                            }
                            else if (response == "isNotMatc6hInt") {
                                alert("工号不允许为非数字,且只能6位工号,请重新输入,谢谢!");
                            }
                            else {
                                $(‘#DetailsView1_txtStaffName‘).val(response);
                                $(‘#txt_staffname_hidden‘).val(response);
                            }
                        }
                    });
                }
            });
        });

    </script>

3、Ajax方法:

<%@ WebHandler Language="C#" Class="Sign" %>

using System;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Text.RegularExpressions;

public class Sign : IHttpHandler {

    public void ProcessRequest (HttpContext context) {
        String strStaffNo = context.Request.Params["staffNo"];
        SQLHelper sqlhelper = new SQLHelper();
        String strStaffName = "";
        try
        {
            if (strStaffNo !=null && strStaffNo !="")
            {
                bool b = Regex.IsMatch(strStaffNo.Trim(), "^\\d{6}$");
                if (!b)
                {
                    context.Response.Write("isNotMatc6hInt");
                    return;
                }
                System.Web.UI.WebControls.SqlDataSource sql = new System.Web.UI.WebControls.SqlDataSource();
                sql.DataSourceMode = System.Web.UI.WebControls.SqlDataSourceMode.DataSet;
                DataSet ResultSet = new DataSet();
                // SELECT [StaffNo], [ChineseName] FROM [VHMS_StaffNameSection]  where staffno = ‘123456‘ and ( ChineseName = N‘黄‘ or EnglishName = ‘HUANG‘)
                ResultSet = sqlhelper.RunQuery_getStaffName("SELECT [StaffNo], [ChineseName] FROM [StaffNameSection]  where staffno = ‘" + strStaffNo.Trim() + "‘");

                if (ResultSet.Tables[0].Rows.Count == 0)
                {
                    context.Response.Write("isNotExist");
                    return;
                }
                else
                {
                    strStaffName = ResultSet.Tables[0].Rows[0]["ChineseName"].ToString();
                    context.Response.Write(strStaffName);
                }
            }
            else
            {
                context.Response.Write("isNotMatc6hInt");
                return;
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }

    public bool IsReusable {
        get {
            return false;
        }
    }
}

4、SQLHelper方法:

using System;
using System.Collections.Generic;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;

/// <summary>
///SQLHelper 的摘要说明
/// </summary>

public class SQLHelper
{
    public DataSet RunQuery_getStaffName(string QueryString)
    {
        System.Data.SqlClient.SqlConnection DBConnection = null;
        DBConnection = new System.Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["webConnectionString_Dept"].ToString());
        DBConnection.Open();
        SqlDataAdapter DBAdapter = default(SqlDataAdapter);
        DataSet ResultsDataSet = new DataSet();

        try
        {
            DBAdapter = new SqlDataAdapter(QueryString, DBConnection);
            DBAdapter.Fill(ResultsDataSet);
            DBConnection.Close();
        }
        catch (Exception ex)
        {
            if (DBConnection.State == ConnectionState.Open)
            {
                DBConnection.Close();
            }
        }
        return ResultsDataSet;
    }
}
<connectionStrings>
<add name="webConnectionString_Dept" connectionString="Data Source=数据库服务器;Initial Catalog=库名;Persist Security Info=True;User ID=用户名;Password=密码" providerName="System.Data.SqlClient" />
</connectionStrings>

5、数据写入方法:

    protected void DetailsView1_ItemInserted(object sender, DetailsViewInsertedEventArgs e)
    {
        Response.Write("<script languge=‘javascript‘>alert(‘成功提交,谢谢!‘);window.location.href=‘index.html‘</script>");
    }

    protected void DetailsView1_ItemInserting(object sender, DetailsViewInsertEventArgs e)
    {
        string staffName = this.txt_staffname_hidden.Value.Trim();

        TextBox txtStaffNo = (TextBox)this.DetailsView1.FindControl("txtStaffNo");
        TextBox txtStaffName = (TextBox)this.DetailsView1.FindControl("txtStaffName");
        //txtStaffName.Text = staffName;
        lblstringStaffName.Text = staffName;
    }
时间: 2024-11-06 07:06:42

Jquery Ajax取值和绑定写入数据库的相关文章

jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关

jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关 获取一组radio被选中项的值var item = $('input[@name=items][@checked]').val();获取select被选中项的文本var item = $("select[@name=items] option[@selected]").text();select下拉框的第二个元素为当前选中值$('#select_id'

jQuery radio取值,checkbox取值,select取值

语法解释: 1 $("#select_id").change(function(){//code...});   //为Select添加事件,当选择其中一项时触发 2 var checkText=$("#select_id").find("option:selected").text();  //获取Select选择的Text 3 var checkValue=$("#select_id").val();  //获取Selec

爬取商品信息、写入数据库操作

爬取商品信息并写入数据库操作 本次爬取当当网图书程序设计类书籍,爬取信息包括书名.链接和评论,并写入mysql. 1.首先修改items.py title存储书名.link存储商品链接.comment存储评论数 2.其次修改dd.py 首先要用xpath提取商品的信息,其次还需要构造程序设计类书籍每一页的链接.通过分析网页的组成,构造下一页的网页来提取更多的商品信息,如上图循环url所示. 需要提取上图三个红框中的内容,就需要设置xpath提取式.第一个红框是书名,设置xpath为:‘//a[@

2016 系统设计第一期 (档案一)jQuery radio 取值赋值

MVC代码: <div class="form-group"> <label for="Gender" class="col-sm-2 control-label">性别</label> <div class="col-md-8"> <label class="checkbox-inline"> @Html.RadioButton("Ge

本篇文章主要是对jquery+ajax+C#实现无刷新操作数据库数据的简单实例进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助

我们知道同步执行和异步执行的区别,为了更好的提高用户的体验,我们都会采用异步方式去处理一些问题,毕竟单线程的同步可能回造成卡死等现象,很不友好,所以可以使用ajax来完成用户的体验,现在我们就来说说如何使用jquery的ajax来实现无刷新的获取内容 我们只是单方面的获取内容,分页等就不考虑了,后期会讲到无刷新的分页 页面中我们放置一个Div容器用来存放返回的内容 <div id="comment"><img src="images/Wait.gif&quo

jsp页面通过ajax取值/展示数据及分页显示

jsp页面通过ajax从后台获取数据,在页面展示,并实现分页效果代码: [JavaScript部分代码] 1 <script> 2 function getComposition(pageno){ 3 4 //alert(pageno); 5 $.ajax( 6 { 7 url:'<%=basePath%>composition/compositionlist', 8 type:'post', 9 data:"pageno="+pageno, 10 succes

html控件取值,插入后台数据库

我以前有个疑问怎么才能把html的input值取出来呢?取出来到后台,这样就可以和asp:textbox一样操作了.关键就是在后面加一个runat="server"属性.然后再加一个onserverclick="submit" 事件.html控件不像asp控件可以直接在事件属性中双击添加事件,它需要手动添加比如. 普通input控件:<input type="text" name="email"  /> 加了run

Jquery ajax json 值回传不了

今天调试系统的时候,MVC 框架下调用ajax 值,回传的json值获取不到,后来发现竟然是服务没开,郁闷不已,留个截图,做个纪念. 下面是调用的js方法:调试返回的值是1,不过ajax中直接跳到error方法.发现是上面的“ASP.NET 状态服务” 没开.郁闷. function Login() { if (CheckLogin()) { $.ajax({ url: "@Url.Action("Login", "Login")", type:

jquery radio 取值 取消选中 赋值

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-