如何使用JQuery创建链接按钮

如何使用JQuery创建链接按钮,jquery,asp.net,ajax,Jquery,Asp.net,Ajax,我有一个使用ASP.NETWebForms和JQuery构建的应用程序。在我的.aspx页面中,我有一个链接,当单击该链接时,会向页面的codebehind中的WebMethod发出JQuery AJAX请求,该WebMethod依次从数据库读取数据并将其作为JSON对象返回 $.ajax({ type: "POST", contentType: "application/json; charset=utf-8", url: 'Query.aspx/GetValues',

我有一个使用ASP.NETWebForms和JQuery构建的应用程序。在我的.aspx页面中,我有一个链接,当单击该链接时,会向页面的codebehind中的WebMethod发出JQuery AJAX请求,该WebMethod依次从数据库读取数据并将其作为JSON对象返回

$.ajax({
   type: "POST",
   contentType: "application/json; charset=utf-8",
   url: 'Query.aspx/GetValues',
   dataType: "json",
   success: function (result) {
      for (var i = 0; i < result.d.length; i++) {
         var element = result.d[i];
      }
   }
});
$.ajax({
类型:“POST”,
contentType:“应用程序/json;字符集=utf-8”,
url:'Query.aspx/GetValues',
数据类型:“json”,
成功:功能(结果){
对于(变量i=0;i
直到现在一切都好!当我想将这个JSON对象写入页面时,问题就出现了,因为我想为每个JSON对象生成如下HTML:

<li><a id="..." href="javascript:doPostback(...)">...</a></li>
  • 事实上,我需要在客户端生成一种LinkButton,因为我需要在回发时执行一些服务器端操作。我不知道如何用JQuery来表达这一点

    我希望我的问题是清楚的

    多谢各位

    var元素=“”;
    
     var element = '';
     $.ajax({
       type: "POST",
       contentType: "application/json; charset=utf-8",
       url: 'Query.aspx/GetValues',
       dataType: "json",
       success: function (result) {
          for (var i = 0; i < result.d.length; i++) {
             element+= '<a href="javascript:doPostback(...)">'+result.d[i]+'</a>';
          }
        $('#result-container').html(element);
       }
    });
    
    $.ajax({ 类型:“POST”, contentType:“应用程序/json;字符集=utf-8”, url:'Query.aspx/GetValues', 数据类型:“json”, 成功:功能(结果){ 对于(变量i=0;i

    此代码将创建链接并将html加载到结果容器中

    那么您正在返回JSON对象,好吗?您在这些JSON对象中返回什么样的信息?这可能是一个很大的假设,具体取决于JSON对象中返回的信息,但为什么不试试这样的方法呢:

    ...
    success: function (result) {
        for (var i = 0; i < result.d.length; i++) {
            var element = result.d[i];
    
            var link = $('<a />');
            link.attr('href', 'javascript:doPostback(...)');
            link.attr('id', 'some-id');
            link.html('link-text-here');
    
            var list_item = $('<li />');
            list_item.append(link);
    
            $('your-ordered-list-selector').append(list_item);
        }
    }
    ...
    
    。。。
    成功:功能(结果){
    对于(变量i=0;i”);
    列表项。追加(链接);
    $('your-ordered-list-selector')。追加(列表项);
    }
    }
    ...
    

    希望这有帮助!:)

    这没关系,但我需要这些括号之间的代码:link.attr('href','javascript:doPostback(…);:问题是,我不知道如何发出回发(带有参数)。这与在常规HTML中所做的差不多。因此,如果我的函数名被称为“awesomeFunction”,并且它包含两个参数(两个字符串),您可以这样做:
    link.attr('href','javascript:awesomeFunction(“第一个字符串”,“第二个字符串”)
    或者,应用onclick函数:
    link.attr('href',return false')。单击(函数(){awesomeFunction(“第一个字符串”,“第二个字符串”)})这没问题,但我需要这些括号之间的代码:link.attr('href','javascript:doPostback(…);:问题是我不知道如何发出回发(带有参数)。您好,创建一个新函数doPostback,该函数从JSON结果编辑中获取参数:ex function doPostback(str){alert('您已选择'+str);}您不能使用JS调用ASP函数。我不需要调用ASP.NET函数,我需要发出ASP.NET回发!Wokiez然后在JS Postback函数中使用jquery$.post将函数参数用作post请求参数,将其发布到ASP.NET文件!