簡體   English   中英

將JS對象傳遞到HTML字符串

[英]Passing JS Object into HTML String

我有一個JS變量,它定義了一個我想在DOM上其他地方顯示的DOM元素,定義為

var salesRep = $("ul.map").attr("id","1");

我想將其傳遞給一個名為show();的函數show();

所以我做了

function getSalesRep(salesRep){
 return salesRep
 }

然后在show()函數中,我調用了getSalesRep()

看起來像

function show(){
   getSalesRep();  
   var x1 = "<p>" + salesRep + "<p>";
   $("#map").after($(x1));
   }

但是,在DOM上應該出現包含HTML的salesRep變量的地方,它會輸出[Object object]

我似乎可以弄清楚...我相信這與我錯誤定義對象的方式有關。

如果您需要在此處顯示html內容,

var x1 = "<p>" + salesRep.html() + "<p>";

在附加DOM元素之前,您需要JSON.stringify [Object object]

function show(){
  let listOfSales = JSON.stringify(getSalesRep());  
  var x1 = "<p>" + listOfSales + "<p>";
  $("#map").after($(x1));
}

連接字符串和對象時會發生這種情況。 您需要對salesRep進行字符串化和連接。

您可以使用JSON.stringify()實現相同的目的。

獲得字符串后,可以將其添加為新創建的元素的內部HTML並附加它。

您不需要函數即可訪問變量salesRep 定義getSalesRep ,然后在此處調用它是不必要的,因為它不執行任何操作。 如果刪除函數定義並從show方法調用,將不會受到任何影響,因為最后使用了salesRep變量。 您只需要在對象上使用.html()方法使用stringify salesRep

暫無
暫無

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

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