javascript - 如何用ajax通过jquery调用webform的函数?

标签 javascript c# jquery asp.net

我想通过jquery和ajax调用一个函数来更改WebForm1中名为“firstdivision”的部门的文本框中的值。 这是我写的代码,但它不起作用:

<asp:ScriptManager ID="scriptmanager" runat="server" EnableCdn="true" AjaxFrameworkMode="Disabled">
    <Scripts>
        <asp:ScriptReference Path="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.11.1.min.js"/>
    </Scripts>
    </asp:ScriptManager>

    <script type="text/javascript" lang="javascript">

        var pageurl = '<%=ResolveUrl("~/WebForm1.aspx/Search()") %>';
        var srch = $("#<%=list_Search.Text%>");
        var name = $("#<%=txt_Name.Text%>");
        var empID = $("#<%=txt_EmpID.Text%>");
        var address = $("#<%=txt_Address.Text%>");
        var email = $("#<%=txt_Email.Text%>");
        var phone = $("#<%=txt_Phone.Text%>");
        var salary = $("#<%=txt_Salary.Text%>");
        var dob = $("#<%=txt_DOB.Text%>");
        var natinality = $("#<%=txt_Nationality.Text%>");

        $('document').ready
        (
            function ()
            {
                $("#btn_Search").click
                (
                    function (e)
                    {
                        e.preventDefault();
                        $.ajax
                        (
                          {
                              type : 'POST',
                              URL: pageurl,
                              async: "true",
                              //data: srch,
                              //contentType: "application/json; charset=utf-8",
                              //dataType: "json",
                              success: function (x) 
                                          { 
                                              alert("Done Successfully with " + x.msg);
                                          },
                              error: function (e) { alert("The call got failed due to " + e.msg); }                                 
                          }                             
                        );
                        $("#firstDivision").html("").append(data);
                    }
                );
            }
        )

        //function dotask()
        //{
        //    employee_db.WebForm1.Search();
        //    return true;
        //}

    </script>



这是正在调用的函数的代码:

[WebMethod]
    public static void Search()
    {
        //string search,string name,int empID,string address,string email,double phone,double salary,DateTime dob,string nationality
        string constr = ConfigurationManager.ConnectionStrings["myconnectionstring"].ConnectionString;
        SqlConnection myconnection = new SqlConnection(constr);
        myconnection.Open();

        WebForm1 test = new WebForm1();
        test.conc(myconnection);
        //conc(myconnection);

        myconnection.Close();
    }

    protected void conc(SqlConnection myconnection)
    {
        string search = list_Search.Text; 
        SqlDataReader reader;

        if(string.Compare(search,"Search By Name",true)==0)
        {
            SqlCommand myCommand = new SqlCommand("SELECT * FROM Emp_Details WHERE Name='" + txt_Name.Text + "'", myconnection);
             reader= myCommand.ExecuteReader();
        }

        else if (string.Compare(search, "Search By Employee ID", true) == 0)
        {
                SqlCommand myCommand = new SqlCommand("SELECT * FROM Emp_Details WHERE Employee_ID='" + txt_EmpID + "'", myconnection);
            reader= myCommand.ExecuteReader();
        }

        else if (string.Compare(search, "Search By Address", true) == 0)
        {
                SqlCommand myCommand = new SqlCommand("SELECT * FROM Emp_Details WHERE Address='" + txt_Address + "'", myconnection);
            reader= myCommand.ExecuteReader();
        }

        else if (string.Compare(search, "Search By Phone No", true) == 0)
        {
                SqlCommand myCommand = new SqlCommand("SELECT * FROM Emp_Details WHERE Phone='" + txt_Phone + "'", myconnection);
            reader= myCommand.ExecuteReader();
        }

        else if (string.Compare(search, "Search By Email", true) == 0)
        {
                SqlCommand myCommand = new SqlCommand("SELECT * FROM Emp_Details WHERE Email='" + txt_Email + "'", myconnection);
            reader= myCommand.ExecuteReader();
        }

        else if (string.Compare(search, "Search By Salary", true) == 0)
        {
                SqlCommand myCommand = new SqlCommand("SELECT * FROM Emp_Details WHERE Salary='" + txt_Salary + "'", myconnection);
            reader= myCommand.ExecuteReader();
        }

        else if (string.Compare(search, "Search By Date Of Birth", true) == 0)
        {
            SqlCommand myCommand = new SqlCommand("SELECT * FROM Emp_Details WHERE Date_of_Birth='" + txt_DOB + "'", myconnection);
            reader= myCommand.ExecuteReader();
        }

        else
        {
            SqlCommand myCommand = new SqlCommand("SELECT * FROM Emp_Details WHERE Nationality='" + txt_Nationality + "'", myconnection);
            reader= myCommand.ExecuteReader();
        }

        try
        {
            DataTable dt = new DataTable();

            if (!reader.Read())
                return;     

            txt_Name.Text = reader["Name"].ToString();
            txt_EmpID.Text = reader["Employee_ID"].ToString();
            txt_Address.Text = reader["Address"].ToString();
            txt_Phone.Text = reader["Phone"].ToString();
            txt_Salary.Text = reader["Salary"].ToString();
            txt_Email.Text = reader["Email"].ToString();
            txt_DOB.Text = reader["Date_Of_Birth"].ToString();
            txt_Nationality.Text = reader["Nationality"].ToString();
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }

现在没有收到任何错误,但我想刷新包含所有这些文本框的“第一分区”分区,以显示通过数据库的搜索功能搜索到的新数据

最佳答案

从 url 和 # 中删除 .cs

$("#firstDivision").load
                    (
                      {
                          url: "WebForm1.aspx/Search",
                          async: "true",
                          success: function (msg) { alert("Done Successfully"); },
                          error: function (x, e) { alert("The call got failed due to " + x.msg); }
                      }
                    );

关于javascript - 如何用ajax通过jquery调用webform的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27315163/

相关文章:

c# - 获取 redis 配置值并在 C# 控制台程序中查看

javascript - Jquery-Visible 不工作

javascript - 是否可以使用 Jquery 模拟 Ctrl+F 组合键?

javascript - 如何在ajax jquery中编写成功语句来更改单选按钮?

javascript - 无法通过 ajax 调用加载 php 页面

javascript - 选中复选框时保持表单文本输入的可见性

javascript - 使用 JavaScript 读取 'hidden_elem' 评论

javascript - 如何获取javascript对象方法名?

c# - Protobuf-net 枚举向后兼容性

c# - 设计用于 F# 和 C# 的 F# 库的最佳方法