繁体   English   中英

如何在JSON脚本中添加链接/ href /超链接

[英]How can I add a link/href/hyperlink in JSON script

我想创建一个动态数组/脚本,并且需要在JSON返回值中添加一些链接,以便可以创建一个长数组,其中包含带有准备好的JSON文件的动态列表或源。

我的HTML图片

<table id="userdata" border="5">            
        <th>Revision  Date</th>
        <th>Document  Name</th>
        <th>Department </th>
        <th>Description</th>
        <th>Link</th>     
</table>
var data = {

    "person": [{
        "revisiondate": "21 April 2016",
        "documentname": "1658MC",
        "department": "Sales",
        "description": "Available",
        "link": "href=1658MC.pdf"
    }, {
        "revisiondate": "16 April 2016",
        "documentname": "VCX16B",
        "department": "Enginnering",
        "description": "Not Available",
        "link": "href=VCX16B.pdf"
    }, {
        "revisiondate": "15 March 2016",
        "documentname": "AB36F",
        "department": "Custumer Services",
        "description":  "Not Available",
        "link": "href=AB36F.pdf"
    }, {
        "revisiondate": "12 Agust 2016",
        "documentname": "FC25D",
        "department": "Technical Support",
        "description": "Not Available",
        "link": "href=FC25D.pdf"
    }]
} 
//$.getJSON("new4.json", function(data) {
// console.log(data);

//$.getJSON('new4.json', function(data) {
    $.each(data.person, function(i, person) {
        var tblRow =    "<tr><td>" + person.revisiondate + 
                        "</td><td>" + person.documentname + 
                        "</td><td>" + person.department +
                        "</td><td>" + person.description + 
                        "</td><td>" + person.link +
                        "</td></tr>"
        $(tblRow).appendTo("#userdata tbody");
    });

点击标记区域

我如何向我的脚本行添加链接,例如当我单击此链接时,该链接已打开到我的源文件(如PDF或HTML)。 我可以用HTML做到这一点,但是当我尝试使用JSON时,我做不到。

"</td><td><a  target='_blank' href='\\mustafa02\group\Manuals\Reviewed\ "+ person.documentname.split('href=')[0]+"' >"+person.documentname.split('href=')[0]+"</a></td>"

我的pdf位于“已查看”文件夹中。 所以我的文件夹路径如上所示。 \\\\mustafa02\\group\\Manuals\\Reviewed\\

$.each(data.person, function(i, person) {
            var tblRow =    "<tr><td>" + person.revisiondate + 
                            "</td><td>" + person.documentname + 
                            "</td><td>" + person.department +
                            "</td><td>" + person.description + 
                            "</td><a href='" + person.link + "'>link text</a><td>" +
                            "</td></tr>"
            $(tblRow).appendTo("#userdata tbody");
        });

您应该从json中删除attrribute'href'

或者,您可以像这样在json数据链接中添加单引号

var data = {
        "person": [{
            "revisiondate": "21 April 2016",
            "documentname": "1658MC",
            "department": "Sales",
            "description": "Available",
            "link": "href='1658MC.pdf'"
        }, {
            "revisiondate": "16 April 2016",
            "documentname": "VCX16B",
            "department": "Enginnering",
            "description": "Not Available",
            "link": "href='VCX16B.pdf'"
        }, {
            "revisiondate": "15 March 2016",
            "documentname": "AB36F",
            "department": "Custumer Services",
            "description":  "Not Available",
            "link": "href='AB36F.pdf'"
        }, {
            "revisiondate": "12 Agust 2016",
            "documentname": "FC25D",
            "department": "Technical Support",
            "description": "Not Available",
            "link": "href='FC25D.pdf'"
        }]


$.each(data.person, function(i, person) {
            var tblRow =    "<tr><td>" + person.revisiondate + 
                            "</td><td>" + person.documentname + 
                            "</td><td>" + person.department +
                            "</td><td>" + person.description + 
                            "</td><a " + person.link + ">link text</a><td>" +
                            "</td></tr>"
            $(tblRow).appendTo("#userdata tbody");
        });

添加一个带有hreftarget="_black"<a>标记,以在新标签页中打开链接,并使用split从json中删除href。

 <html xmlns="http://www.w3.org/1999/xhtml"> <head> <script src="https://code.jquery.com/jquery-1.10.2.js"></script> </head> <body> <table id="userdata" border="5"> <th>Revision Date</th> <th>Document Name</th> <th>Department </th> <th>Description</th> <th>Link</th> </table> <script> var data = { "person": [{ "revisiondate": "21 April 2016", "documentname": "1658MC", "department": "Sales", "description": "Available", "link": "href=1658MC.pdf" }, { "revisiondate": "16 April 2016", "documentname": "VCX16B", "department": "Enginnering", "description": "Not Available", "link": "href=VCX16B.pdf" }, { "revisiondate": "15 March 2016", "documentname": "AB36F", "department": "Custumer Services", "description": "Not Available", "link": "href=AB36F.pdf" }, { "revisiondate": "12 Agust 2016", "documentname": "FC25D", "department": "Technical Support", "description": "Not Available", "link": "href=FC25D.pdf" }] } //$.getJSON("new4.json", function(data) { // console.log(data); //$.getJSON('new4.json', function(data) { $.each(data.person, function(i, person) { var tblRow = "<tr><td>" + person.revisiondate + "</td><td>" + person.documentname + "</td><td>" + person.department + "</td><td>" + person.description + "</td><td><a target='_blank' href='"+ person.link.split('href=')[1]+"' >"+person.link.split('href=')[1]+"</a></td></tr>" $(tblRow).appendTo("#userdata tbody"); }); //}); </script> </body> </html> 

问题

[英]Issue with <link href hyperlink

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM