2013-02-26 36 views
5

Tôi muốn sử dụng ajax với điều khiển người dùng asp.net,làm thế nào để sử dụng jQuery ajax với điều khiển người dùng asp.net?

$.ajax({ 
     type: "POST", 
     url: "*TCSection.ascx/InsertTCSection", 
     data: "{id:'" + id + "'}", 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     success: function (msg) { 
      var URL = msg.d; 
      alert(URL); 
     }); 

cs đang

[WebMethod] 
public static string InsertTCSection(string id) 
{ 
    string result = "deneme"; 
    return result; 
} 
+0

Bạn gặp phải một số lỗi? –

+0

i am thêm breakpoint ở chức năng phía máy chủ và nó không được nhấn – altandogan

+0

bạn không thể gọi một phương thức được giữ bên trong UserControl thông qua jquery, như lúc chạy không có tài nguyên như .ascx, nó được hợp nhất với trang mà nó được giữ –

Trả lời

1

Hãy thử:

$.ajax({ 
     type: "POST", 
     url: "*TCSection.ascx/InsertTCSection", 
     data: JSON2.stringify({ id: id}, //Your 2nd id is passing value but i dont know where its come from 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     success: function (msg) { 
      var URL = msg.d; 
      alert(URL); 
      } 
     )}; 

và cs:

[WebMethod] 
public static string InsertTCSection(string id) 
{ 
    string result="deneme"; 
    return result; 
} 
+1

tham số id không quan trọng tôi muốn tìm hiểu về ajax với .ascx. có cách nào để làm điều này không? – altandogan

1

Tôi nghĩ bạn có thể là m issing thuộc tính này

[System.Web.Script.Services.ScriptService] 

Trước khi lớp dịch vụ như

[System.Web.Script.Services.ScriptService] 
public class TCSection: System.Web.Services.WebService 
{ 

    [WebMethod] 
    public static string InsertTCSection(string id) 
    { 
    } 
} 

Hoặc có thể có một lý do khác mà con đường của webservice là không đúng.

5

Bạn không thể gọi phương thức được giữ bên trong một điều khiển người dùng thông qua jquery. vì các điều khiển .ascx không đại diện cho url thực.

Chúng có nghĩa là được nhúng vào một số trang ASP.NET, do đó chúng không tồn tại trong thời gian chạy. điều bạn có thể làm là tạo một dịch vụ riêng và đặt phương thức của bạn ở đó. như webservices.

thấy this, this và nhiều người khác

2

tôi đang sử dụng Handler tổng quát để giải quyết vấn đề này.

Các vấn đề liên quan