Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JavaScript将JSON属性值添加到HTML元素';属性值_Javascript_Html_Ajax_Json - Fatal编程技术网

使用JavaScript将JSON属性值添加到HTML元素';属性值

使用JavaScript将JSON属性值添加到HTML元素';属性值,javascript,html,ajax,json,Javascript,Html,Ajax,Json,我在JSON文件中有一些“img”属性,它们的值是.jpg文件路径(例如“images/image.jpg”) 我正在尝试将这些值添加到现有HTML元素的“src”属性中,以下是我迄今为止尝试的内容 从JSON对象创建文本节点,然后尝试使用“.setAttribute()”方法将这些节点添加为“src”属性值,这将导致添加一个对象,而不是作为字符串添加url路径 var img=document.createElement(“img”); var imgSrc=document.createTe

我在JSON文件中有一些“img”属性,它们的值是.jpg文件路径(例如“images/image.jpg”)

我正在尝试将这些值添加到现有HTML元素的“src”属性中,以下是我迄今为止尝试的内容

  • 从JSON对象创建文本节点,然后尝试使用“.setAttribute()”方法将这些节点添加为“src”属性值,这将导致添加一个对象,而不是作为字符串添加url路径

    var img=document.createElement(“img”); var imgSrc=document.createTextNode(对象); setAttribute(src,imgSrc)

  • 使用“JSON.stringify()”方法将JSON值转换为字符串,并将其添加为img元素的“src”属性值。这将导致src属性被正确的路径填充,但它们被%22包围,可能表示字符串周围的引号

    var img=document.createElement(“img”); var imgSrc=JSON.stringify(对象); setAttribute(src,imgSrc)

  • 关于如何实现我的目标有什么想法吗


    提前感谢。

    听起来您有一个JSON字符串,它已经被解析为JavaScript对象(或者您根本没有使用JSON,您的起点是对象)。您还没有告诉我们JSON是什么或对象结构是什么。在下面的评论中,您给出了部分内容:

    …但这本身就是无效的JSON。我将假设实际的JSON如下所示:

    {
        "img": "_/images/image-one.jpg"
    }
    
    …并且它已经被解析,因此我们有一个从变量
    object
    引用的对象,该变量有一个属性
    img
    ,包含图像的URL

    要使用该对象的
    img
    属性,只需引用它:

    var img = document.createElement("img");
    img.src = object.img;
    

    JSON对象结构是什么样子的?问题真的不清楚。你确定你有JSON吗?(记住JSON是一种文本符号。)JSON看起来像什么?你怎么知道的?您是否已经解析过它(您上面的代码引用了一个名为
    object
    ,这表明JSON文本已经被解析)。JSON字符串是图像的url(“img”):“\uu/images/image one.jpg”。不确定这是否是一个不好的做法?(这是我正在处理的第一个javascript/JSON项目)。我收到以下开发工具控制台错误消息“get 404(未找到)”“,我想这是由于%22的原因,因为路径的其余部分是正确的?@dntz:我想我现在理解了你的问题。我已经更新了答案。对不起,读了你的答案,我现在意识到我的问题不清楚。我想属性必须对它做些什么,比如在元素中放置属性时,它需要附加到文本中首先是节点。我假设'img.src=object.img;'等于img.setAttribute(“src”,object.img);,它工作得很好,你能告诉我需要研究什么来学习'img.src=object.img;'语句背后的基础知识吗?谢谢你的帮助!@dntz:不客气!“我假设'img.src=object.img;'等于img.setAttribute(“src”)“,object.img);,它工作得非常完美。
    src
    是为
    img
    元素定义的DOM属性,它反映了它的
    src
    属性的值。有很多方便的反射属性。大多数时候,反射属性等同于使用属性,但有时会有差异。(续)(继续)例如,如果链接具有相对的
    href
    属性,则
    href
    属性包含解析路径,而
    getAttribute
    获取相对路径()。类似地,输入元素上的
    value
    属性为您提供当前值,但属性为您提供标记()中的属性值。
    var img = document.createElement("img");
    img.src = object.img;