簡體   English   中英

從HTML提取文本以存儲為JS變量,然后添加到單獨的HTML元素中

[英]Extracting text from a HTML to be stored as a JS variable, then to be added to a separate HTML's element

Alrite,我看過其他標題相似的問題,但它們不完全符合Im的要求。 我有2個HTML文檔,一個包含我的頁面,一個包含一個帶有文本段落的元素。 和一個單獨的.js文件一樣,我想做的是提取此文本,將其存儲為JS變量,然后使用jQuery編輯主頁中元素的內容。 這是我得出的結論,但是沒有按預期工作,我不確定這是我在語法錯誤還是在完全使用錯誤的代碼:

$(document).ready(function(){
var c1=(#homec.substring(0)) 
     // #homec is the container of the text i need 
    $(".nav_btn #1").click(function(c1){ 
         $(".pcontent span p") .html(+c1)} 
);

});
我知道+ c1最有可能是錯誤的,但是我一直在努力尋找這一語法。 預先謝謝你:D

var c1=(#homec.substring(0))將引發錯誤,因為#homec不是有效的變量名,未定義並且沒有名為substring的屬性函數。 要獲取id為homec的元素的html ,請使用html方法:

var c1 = $("#homec").html(); 

c1不應作為click函數的參數,因為它是在父作用域中定義的。 +c1是不必要的,因為您不需要將c1強制為數字。

如果要在段落末尾添加內容,請使用append方法:

$(".pcontent span p").append(c1)

這意味着您應該改用以下代碼:

$(document).ready(function() { 
  var c1 = $("#homec").html();
  $(".nav_btn #1").click(function() {  
     $(".pcontent span p").append(c1)
  }); 
});

PS號在HTML中不是有效的ID屬性。 瀏覽器支持它,因此它不會使任何錯誤,但是您的頁面將無法驗證。

JQuery text()函數將允許您獲取匹配元素集中每個元素的組合文本內容,包括它們的后代。 然后,您可以使用text(value)函數設置目標段落元素的文本內容。 這樣的事情就足夠了:

$(document).ready(function() {
    var c1 = $("homec").text();
    $(".nav_btn #1").click(function() { 
        $(".pcontent span p").text(c1);
    });
});

有關text()函數的更多詳細信息,請參見JQuery 文檔 如果需要捕獲其他文檔的完整結構,請嘗試使用html()函數。

嘗試這個:

$(".nav_btn #1").click(function(c1){           
    var para = $(".pcontent span p");
    para.html(para.html() + c1);
    });

暫無
暫無

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

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