Javascript Json表列中的单个链接

Javascript Json表列中的单个链接,javascript,jquery,html,json,Javascript,Jquery,Html,Json,我有一个页面,其中有一个json表从json api中提取信息。这个很好用。现在我的问题是,在最右边的专栏中,我想要一个链接到我的另一个页面,这个链接将是一个独特的链接。现在,正如您从代码中看到的,我可以让它链接到html页面12345,但是所有的行都链接到这个页面。这对哈没有帮助 理想情况下,我希望第一个按钮链接到1.html,然后第二个按钮链接到2.html,依此类推 这是我到目前为止的代码 for(var i =0;i < json.results.collect

我有一个页面,其中有一个json表从json api中提取信息。这个很好用。现在我的问题是,在最右边的专栏中,我想要一个链接到我的另一个页面,这个链接将是一个独特的链接。现在,正如您从代码中看到的,我可以让它链接到html页面12345,但是所有的行都链接到这个页面。这对哈没有帮助

理想情况下,我希望第一个按钮链接到1.html,然后第二个按钮链接到2.html,依此类推

这是我到目前为止的代码

          for(var i =0;i < json.results.collection1.length;i++) {

             var title = json.results.collection1[i].Name.text;

             var venue = json.results.collection1[i].Venue.text;
             var date = json.results.collection2[i].Date;
             var button = "<button class='redirect-button' data-url='12345.html'>Link</button>";



             $("#apple").append("<tbody><tr><td>"+title+"</td><td>"+venue+"</td><td>"+date+"</td><td>"+button+"</td></tr></tbody>");
           $("#apple").find(".redirect-button").click(function(){
   location.href = $(this).attr("data-url");
            });
           }

     },

显然,我们将非常感谢所有的帮助。谢谢Sam解释上面的评论

您正在创建的链接是一个字符串,但实际上它只是一个字符串。 因此,通过基于循环中的i索引之类的内容连接字符串的URL部分,您可以将其更改为您想要的任何内容。 例如:

var button = "<button class='redirect-button' data-url='" + i + " .html'>Link</button>";
结果:

 <button  class='redirect-button' data-url='abcd.html'>Link</button>
假设返回名为LinkURL,其值为'abcd'


最后,将此字符串附加到$apple元素,然后添加click事件,该事件将查找数据url值并将当前浏览器位置更改为该新值。

您不能执行var button=Link;我个人不确定这将如何工作,对json编码没有什么新的认识,我很惊讶我走到了这一步;大家好,那太好了,比如我能不能输入i+Pear来得到pear1-pear2?或我的意思是,我可以用数字做得很好,但用文本做得更好:不,你会想用数据url='pear+I+1+.html'来得到pear1,pear2只要想想beeten中的所有内容,就像它已经写在页面上一样,然后+whatever here+将是额外的javascript,以创建一个新的数字,如本例中的i+1,后面加上更多的引号,这些引号可能已经写在页面上了。顺便说一句,你是如何在你的链接上获得.html扩展名的呢?我只是在讨论,认为做独特的链接可能更好,TYVM!嗨@dave,你能回答我这个问题吗?一旦日期过去,一个json结果就会被删除,这意味着该表中会有两个项目。所以在目前的情况下,假设我有3个链接255 256和257,255消失了,256会变成255,257会变成256,对吗?这意味着如果有人将某个页面添加到书签中,该页面将不存在。想法?@SamRoberts是的,听起来不错。问题是,您的方法只是有一个指向每个索引的唯一链接,如255.html、256.html、257.html。更好的方法是,如果json对象有一个唯一的标识符,它是数据库本身的一部分,比如id或LinkURL,然后构建一个类似edit.html?id=+json.results.collection2[i].id的页面,而不是编辑.html?id=255。然后在edit.html页面上,让它查找条目255,并说这是您要查找的信息,如果删除了256,它会说,对不起,这已经不在了,所以即使是书签也至少会显示一些内容。
var button = "<button class='redirect-button' data-url='" + json.results.collection2[i].LinkUrl + " .html'>Link</button>";
 <button  class='redirect-button' data-url='abcd.html'>Link</button>