2014-12-16 2 views
1

Я ListView:как связать данные с ListView в ASP.NET с помощью JQuery

<asp:ListView ID="lsvNews" runat="server" OnPagePropertiesChanging="lsvNews_PagePropertiesChanging"> 
    <ItemTemplate> 
     <tr> 
      <td> 
       <a href='<%#Eval("Hyperlink") %>' target="_blank"><%#Eval("Title") %></a>&nbsp;&nbsp;<%#string.Format("{0:MMMM d, yyyy}", Eval("CreatedDate"))%> 
      </td> 
     </tr> 
    </ItemTemplate> 
    <LayoutTemplate> 
     <table> 
      <tr runat="server" id="itemPlaceholder" /> 
     </table> 
    </LayoutTemplate> 
</asp:ListView> 

и функции получить данные с помощью Jquery

function GetNews(pageIndex) { 
    $.ajax({ 
     type: "POST", 
     url: "Default.aspx/GetData", 
     data: '{pageIndex: ' + pageIndex + '}', 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     success: OnSuccess, 
     failure: function (response) { 
      alert(response.d); 
     }, 
     error: function (response) { 
      alert(response.d); 
     } 
    }); 
} 
function OnSuccess(response) { //????? } 

функцию получения данных в коде:

[WebMethod] 
public static string GetData(int pageIndex) 
{ 
    DataSet ds = CreateDataSet(pageIndex); 
    return ds.GetXml(); 
} 

Пожалуйста, сообщите мне, как установить данные привязки к ListView по коду в функции OnSuccess, спасибо :)

ответ

0

Элемент управления представлением по определению является контролем на стороне сервера и не может быть привязан к базе данных на стороне клиента. OnSuccess нужно будет отправить данные обратно в WebMethod, который затем привяжет данные к списку.

Вместо этого, почему бы просто не внести эти изменения в свой веб-метод, что-то вроде этого?

[WebMethod] 
public static string GetData(int pageIndex) 
{ 

    DataSet ds = CreateDataSet(pageIndex); 
    lsvNews.datasource = ds; 
    lsvNews.DataBind(); 
    return "Success"; 
} 

Возможно, я пропущу точку, поэтому извиняюсь, если это так.

0
[WebMethod] 
public static string GetData(int pageIndex) 
{ 
    DataSet ds = CreateDataSet(pageIndex); 
    lsvNews.datasource = ds; 
    lsvNews.DataBind(); 
    return "Success"; 
} 
Смежные вопросы