簡體   English   中英

嘗試在Colfusion中使用JavaScript將src屬性添加到img標簽時,為什么會出現錯誤?

[英]Why am I getting an error when trying to add the src attribute to an img tag using JavaScript within Colfusion?

我正在使用ColdFusion連接到Web Service並從Web Service執行方法。 我將返回的xml字符串的內容存儲到ColdFusion數組中,然后將ColdFusion數組轉換為JavaScript數組,以便可以填充HTML文檔的內容。

嘗試將照片添加到名為“ agent_photo_list ”的無序列表時,出現了我的問題。 特別是當我調用.setAttribute方法時。 它似乎涉及'src'參數。 JavaScript代碼不在cfscript tagWriteOutput方法內時, cfscript tag WriteOutput 我研究了這個問題,但找不到足夠相似的參考文獻。 我仍然無法理解我的問題所在。 我在下面包含了我的代碼:

cfscript>
    WriteOutput('
    <script language = "JavaScript">
        var #ToScript(array, "jsArray")#
        var agent = jsArray[0];
        document.getElementById("output").innerHTML = agent.firstname + " " + agent.lastname;
        var imgurl = "_images/agentphoto.jpg";
        var node = document.createElement("LI");  
        var imgnode = (document.createElement("IMG"));
        imgnode.setAttribute('src', "imgurl");
        node.appendChild(imgnode);
        document.getElementById("agent_photo_list").appendChild(node);
    </script>
    ')
</cfscript>  

我正在使用_images文件夾中的jpg文件進行測試,稍后將其更改為agent.photourl

下面提供了我得到的錯誤:

在第117行的第35列發現無效的CFML構造.ColdFusion正在查看以下文本:<p> src </ p> <p> CFML編譯器正在處理:<ul> <li>以WriteOutput開頭的表達式在線111,第17列。此消息通常是由表達式結構中的問題引起的。<li>從第111行第17列的WriteOutput開始的腳本語句。<li>從第102行第10列開始的cfscript標記。</ li ul>包含或處理的文件的特定順序為:C:\\ inetpub \\ wwwroot \\ webservice.cfm,行:117

我很好奇為什么我的JavaScript在cfscript標記內才cfscript直到調用setAttribute方法為止,以及為什么它在cfscript標記外cfscript

我將感謝您的見解。 謝謝。

您需要將src包裝在“”中 另外,在WriteOutput閉包的末尾添加“ ; ”。 下面的代碼應該為您工作。

<cfscript>
    WriteOutput('
    <script language = "JavaScript">
        var #ToScript(array, "jsArray")#
        var agent = jsArray[0];
        document.getElementById("output").innerHTML = agent.firstname + " " + agent.lastname;
        var imgurl = "_images/agentphoto.jpg";
        var node = document.createElement("LI");  
        var imgnode = (document.createElement("IMG"));
        imgnode.setAttribute("src", "imgurl");
        node.appendChild(imgnode);
        document.getElementById("agent_photo_list").appendChild(node);
    </script>
    ');
</cfscript> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM