[英]Javascript - How can I replace text in HTML with text in script
我是 javascript 新手。 我在想 getelementbyid 但我不知道如何讓它工作
就像標題一樣,這就是我的意思
例如我在 HTML 中有:
<p>fw_93</p>
<p>fw_94</p>
<p>fw_93</p>
所以我想要的是制作腳本來將那些 fw_93 fw_94 替換為我想要的。
例如,我希望它顯示“9.3”而不是顯示“fw_93”。 與 fw_94 到 9.4 相同
將 fw_ 替換為空,將數字除以 10:
Array.prototype.forEach.call(document.getElementsByTagName('p'), function(el) { el.innerHTML = parseInt(el.innerHTML.replace(/[A-Za-z_]*/, '')) / 10; });
<p>fw_93</p> <p>fw_94</p> <p>fw_93</p>
var ps = document.querySelectorAll("p"); for (var i=0; i<ps.length; i++) { var p = ps[i]; var txt = p.innerHTML; //.textContent var updated = txt.replace(/.+(\\d)(\\d)/, "$1.$2"); p.innerHTML = updated; }
<p>fw_93</p> <p>fw_94</p> <p>fw_93</p>
使用 JQuery
不知道為什么我用 JQuery 做這件事,我猜我沒有給予足夠的關注。 我重新編寫沒有意義,因為 JS 中已經有很好的答案。 雖然我將離開這個情況下,它的使用到使用JQuery的任何人。
您可以遍歷每個<p>
元素並隱藏內容,如下所示:
$("p").each(function() { var text = $(this).html(); var text = text.substring(text.indexOf("_") + 1); var text = text[0] + "." + text.substring(1); $(this).html(text); })
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <p>fw_93</p> <p>fw_94</p> <p>fw_93</p>
您可能需要根據輸入的可靠性添加驗證。
請注意,代碼做出以下假設:
_
后跟至少 2 位數字.
總是在第一個數字之后你的 HTML:
<p id="p1">init_value</p>
你的JS:
document.getElementById("p1").innerHTML = "new_value";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.