色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

asp ajax sql查詢數據庫

錢琪琛1年前7瀏覽0評論

在開發Web應用程序時,經常會涉及到與數據庫進行交互的操作,如數據的查詢、插入、更新和刪除。ASP.NET是一種常見的Web開發技術,而Ajax是一種實現異步通信的技術,可以在不刷新整個頁面的情況下更新局部內容。結合ASP.NET和Ajax,我們可以實現強大的數據庫查詢功能,提升用戶體驗。

以一個在線圖書館系統為例,我們需要實現一個功能,即根據用戶輸入的關鍵詞查詢圖書的相關信息,并動態顯示在頁面上。用戶在搜索框中輸入關鍵詞后,系統將通過Ajax發起異步請求,將關鍵詞傳遞給后臺處理。后臺通過查詢數據庫,獲取相關圖書信息,并將結果以JSON格式返回給前端。前端利用接收到的數據動態更新頁面內容,顯示圖書的相關信息。

首先,我們需要在ASP.NET頁面中引入相關的命名空間和引用庫。在頁面的頭部添加以下代碼:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SearchBooks.aspx.cs" Inherits="SearchBooks" %><!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title>圖書搜索</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
<script src="https://cdn.jsdelivr.net/npm/axios@0.21.1/dist/axios.min.js"></script>
</head>
<body>

接下來,我們需要在頁面中創建一個輸入框和一個按鈕,用于用戶輸入關鍵詞并提交查詢請求。在頁面的body部分添加以下代碼:

<input type="text" id="txtKeyword" />
<input type="button" value="搜索" onclick="searchBooks()" />

然后,我們在頁面的JavaScript部分實現searchBooks函數,用于發起Ajax請求并處理返回結果。在頁面的body末尾添加以下代碼:

<script>
function searchBooks() {
var keyword = $("#txtKeyword").val();
axios.get("SearchBooks.aspx?keyword=" + keyword)
.then(function (response) {
var data = response.data;
if (data.length >0) {
// 遍歷返回的數據,動態添加到頁面中
for (var i = 0; i < data.length; i++) {
var book = data[i];
$("#results").append("<div>" + book.Title + " - " + book.Author + "</div>");
}
} else {
Swal.fire("未找到相關圖書");
}
})
.catch(function (error) {
console.error(error);
});
}
</script>

在上述代碼中,我們使用了jQuery和Axios庫進行Ajax操作。在搜索按鈕點擊事件中,我們使用Axios的get方法發送一個GET請求,請求的URL為SearchBooks.aspx,同時將用戶輸入的關鍵詞作為參數傳遞給后臺。后臺會根據關鍵詞查詢數據庫,并將結果以JSON格式返回給前端。前端通過response.data獲取到返回的數據,如果數據長度大于0,則遍歷數據并動態添加到頁面指定的容器中。如果數據長度為0,則彈出提示框提示用戶未找到相關圖書。

最后,我們需要在SearchBooks.aspx.cs文件中編寫后臺代碼,實現根據關鍵詞查詢數據庫的功能。在SearchBooks.aspx.cs文件的Page_Load方法中添加以下代碼:

protected void Page_Load(object sender, EventArgs e)
{
string keyword = Request.QueryString["keyword"];
if (!string.IsNullOrEmpty(keyword))
{
// 連接數據庫,查詢相關圖書信息
string connectionString = "Data Source=localhost;Initial Catalog=Library;Integrated Security=True";
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
string query = "SELECT * FROM Books WHERE Title LIKE @keyword OR Author LIKE @keyword";
SqlCommand command = new SqlCommand(query, connection);
command.Parameters.AddWithValue("@keyword", "%" + keyword + "%");
using (SqlDataReader reader = command.ExecuteReader())
{
List<Book> books = new List<Book>();
while (reader.Read())
{
Book book = new Book();
book.Title = reader["Title"].ToString();
book.Author = reader["Author"].ToString();
books.Add(book);
}
Response.Write(JsonConvert.SerializeObject(books));
}
}
}
}

在上述代碼中,我們首先通過Request.QueryString獲取到前端傳遞的關鍵詞。然后,我們連接數據庫并使用參數化查詢的方式,根據關鍵詞查詢相關圖書信息。查詢到的結果以List<Book>的形式保存,在使用JsonConvert.SerializeObject方法將結果轉換為JSON字符串后,使用Response.Write方法將結果返回給前端。

綜上所述,通過ASP.NET結合Ajax的方式,我們可以實現異步查詢數據庫并動態更新頁面內容的功能。用戶在輸入關鍵詞后,系統將查詢數據庫,并將結果以JSON格式返回給前端。前端利用接收到的數據動態更新頁面內容,實現了一個簡單的圖書搜索功能。