Jquery Ajax請求(1)

來源:互聯網
上載者:User
jQuery.ajax(options)請求

http://s.click.taobao.com/t_8?e=7HZ5x%2BOzdswsVvyc5Jts79Au1Q%3D%3D&p=mm_24156262_0_0

jQuery 底層 AJAX 實現。簡單易用的高層實現見 $.get, $.post 等。

$.ajax() 返回其建立的 XMLHttpRequest 對象。大多數情況下你無需直接操作該對象,但特殊情況下可用於手動終止請求。

$.ajax() 只有一個參數:參數 key/value 對象,包含各配置及回呼函數資訊。詳細參數選項見下。

 傳回值:XMLHttpRequest

 參    數:是可以選的

選    項:async (Boolean) : (預設: true) 預設設定下,所有請求均為非同步請求。如果需要發送同步請求,請將此選項設定為 false。

              注意,同步請求將鎖住瀏覽器,使用者其它操作必須等待請求完成才可以執行。

              beforeSend (Function) : 發送請求前可修改 XMLHttpRequest 對象的函數,如添加自訂 HTTP 頭。XMLHttpRequest 對象是唯一的參數。 Ajax 事件.

             cache (Boolean) : (預設: true,dataType為script時預設為false),設定為 false 將不會從瀏覽器緩衝中載入請求資訊。

            complete (Function) : 請求完成後回呼函數 (請求成功或失敗資訊)。

            contentType (String) : (預設: "application/x-www-form-urlencoded") 發送資訊至伺服器時內容編碼類別型。預設值適合大多數應用場合。

            data (Object,String) : 發送到伺服器的資料。

           dataFilter (Function) :給Ajax返回的未經處理資料的進行預先處理的函數。

            dataType (String) : 預期伺服器返回的資料類型。

                                            "xml": 返回 XML 文檔,可用 jQuery 處理。

                                            "html": 返回純文字 HTML 資訊;包含 script 元素。

                                           "script": 返回純文字 JavaScript 代碼。不會自動緩衝結果。除非設定了"cache"參數

                                           "json": 返回 JSON 資料 。

                                           "jsonp": JSONP 格式。使用 JSONP 形式調用函數時,如 "myurl?callback=?" jQuery 將自動替換 ? 為正確的函數名,以執行回呼函數。

                                           "text": 返回純文字字串

jQuery 代碼:

載入並執行一個 JS 檔案。

$.ajax({
  type: "GET",
  url: "test.js",
  dataType: "script"
});
儲存資料到伺服器,成功時顯示資訊。$.ajax({
   type: "POST",
   url: "some.php",
   data: "name=John&location=Boston",
   success: function(msg){
     alert( "Data Saved: " + msg );
   }
});

裝入一個 HTML 網頁最新版本

$.ajax({
  url: "test.html",
  cache: false,
  success: function(html){
    $("#results").append(html);
  }
});

同步載入資料。發送請求時鎖住瀏覽器。需要鎖定使用者互動操作時使用同步方式。

 var html = $.ajax({
  url: "some.php",
  async: false
 }).responseText;

事列:

JQuery代碼:

 <script type="text/javascript" language="javascript">
        $().ready(function() {
            $.ajax({ type: "post", url: "JqueryAddData.ashx", success: function(msg) {
                $("#divshow").html(msg);
            }
            });
            $.ajax({ type: "post", url: "JqueryAddData.ashx", data: "name=John&age=32", success: function(msg) {
                alert(msg);
            }
        });
           
           
        });
    </script>

 

JqueryAddData.ashx (Code)

<%@ WebHandler Language="C#" class="JqueryAddData" %>

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

public class JqueryAddData : IHttpHandler
{

    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "text/plain";
        //context.Response.Write("Hello World");
        context.Response.Write(SelectAdd());
        string name = HttpContext.Current.Request.Params["name"].ToString();
        string age = HttpContext.Current.Request.Params["age"].ToString();
        context.Response.Write(InsertDataTable(name, age));
    }

    public bool IsReusable
    {
        get
        {
            return false;
        }
    }

    public string SelectAdd()
    {
        string sql = "select fileid,[filename] from sysfiles";
        string connString = @"Data Source=VANSKY-34F1\SQLEXPRESS;Initial Catalog=master;Integrated Security=True";
        StringBuilder builder = new StringBuilder();
        builder.Append("<table>");
        builder.Append("<tr><td>檔案名稱</td><td>路徑</td></tr>");
        using (SqlConnection connection = new SqlConnection(connString))
        {
            connection.Open();
            SqlCommand command = new SqlCommand(sql, connection);
            SqlDataReader reader = command.ExecuteReader(CommandBehavior.CloseConnection);
            while (reader.Read())
            {
                builder.Append("<tr><td>" + reader[1].ToString() + "</td><td></td></tr>");
            }
            connection.Close();
            builder.Append("</table>");
            return builder.ToString();
        }

    }

    public string InsertDataTable(string name, string age)
    {
        string sql = "insert into DataTable values(@Name,@Age)";
        string connString = @"Data Source=VANSKY-34F1\SQLEXPRESS;Initial Catalog=DBTest;Integrated Security=True";
        using (SqlConnection connection = new SqlConnection(connString))
        {
            connection.Open();
            SqlCommand command = new SqlCommand(sql, connection);
            command.Parameters.AddWithValue("@Name", name);
            command.Parameters.AddWithValue("@Age", age);
            int reader = command.ExecuteNonQuery();
            if (reader > 0)
            {
                return "成功!";
            }
            else
            {
                return "失敗!";
            }
        }

    }
   
}http://s.click.taobao.com/t_8?e=7HZ5x%2BOzdswsVvyc5Jts79Au1Q%3D%3D&p=mm_24156262_0_0

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.