4

我目前正在进行一项新的开发,我真的需要我的项目有它需要的丝滑感觉,所以我想使用 Ajax 或 jQuery 从 SQL Server 2008 检索数据。我是 JSON 及其功能的新手。

这是html:

Enter Employee ID
<br />
<asp:TextBox ID="txtEmpId" runat="server"></asp:TextBox>&nbsp;
<br />
<input type="button" id="BtnSearch" runat="server" value="Search" />
<div id="emp" style="display: none; margin-top: 40px">
    ID:<span id="txtId"></span><br />
    Title:<span id="txtTitle"></span><br />
    Name:<span id="txtName"></span><br />
    Department:<span id="txtDepartment"></span><br />
</div>

Ajax 是这样的:

<script type="text/javascript">
$(document).ready(function () {

    $("#MainContent_BtnSearch").click(function () {

        $("#emp").hide("slow");

        var empId = $("#MainContent_TxtEmpId").val();
        $.ajax({
            type: "GET",
            dataType: "json",
            contentType: "application/json",
            url: "",
            data: "{'employeeId': '" + empId.toString() + "'}",
            success: function (data) {
                $("#txtId").html(data.d.ID);
                $("#txtName").html(data.d.FullName);
                $("#txtTitle").html(data.d.Title);
                $("#txtDepartment").html(data.d.Department);
                /// show employee details
                $("#emp").show("slow");
            },
            error: function () {
                alert("Error calling the web service.");
            }
         });
     });
});

有什么方法可以让我的代码变得更好,使其从 SQL Server 2008 中的数据库中获取数据,并且还能够更新该记录并保存数据库更改。

4

2 回答 2

0

您在 ajax 调用中的 URL 可能类似于:Page.aspx/Methodso:default.aspx/GetEmployeeById并将其设为 Post

public class Employee
{
    // properties: ID, FullName, Title, Department
}


[WebMethod]
public static Employee GetEmployeeById(string employeeId)
{
  Employee emp = new Employee();
  string connect = "your connection string";
  string query = "SELECT * FROM Employees WHERE Id = @employeeId";

  using (SqlConnection conn = new SqlConnection(connect))
    {
      using (SqlCommand cmd = new SqlCommand(query, conn))
      {
        cmd.Parameters.AddWithValue("Id", employeeId);
        conn.Open();
        SqlDataReader rdr = cmd.ExecuteReader();
        if (rdr.HasRows)
        {
          while (rdr.Read())
          {
            // fill your employee object
          }
        }
      }
    }
  return emp;
}

这只是一个示例,因此您的连接字符串和 sql 不应该真正使用此方法。还要确保你的employeeid参数有一个值。

于 2012-11-13T09:01:21.163 回答
0

` $('#sqlLoadPerson').sqlRun(); 我在 mojoportal 中工作,我通过调用函数 sqlRun(); 将 jquery 与 sql 连接起来;例如,我们可以取一个 div

我们必须使用这个 div id 并使用这个调用 sql run

这将执行程序,我们将在前端得到结果

于 2013-04-21T05:21:04.633 回答