編輯:的Javascript str.replace與HTML字符串
爲了更詳盡:
我已經由一個外部服務器端渲染引擎生成動態頁面(ERP解決方案處理E-電子商務也是如此,壞故事......),它添加了自己的部分代碼,如按鈕,輸入表單等。 我無法直接控制它們,但我需要對它們進行樣式設計。 所以我使用js的字符串替換函數,因爲我不能使用php,只是html/js。但我不知道js,我只是在學習它,在這種情況下,由於缺乏有關語法/轉義的知識,我沒有工作。
function
在身體內裝有onload="function()"
。
我剛加入所需的代碼的部分之外的<div id="replace-input">
要被替換(在這種情況下是用於項目的數量的輸入形式來sended到購物車)
感謝
編輯完
我無法找到一個可行的解決方案,以取代HTML字符串像
<input name="qty" id="qty" size="6" maxlength="6" value="1" class="input">
到另一個像
<div class="product-qty">
<label for="qty">Qty:</label>
<div class="custom-qty">
<button type="button" class="reduced items" onclick="var result = document.getElementById('qty'); var qty = result.value; if (!isNaN(qty) && qty > 1)result.value--; return false;"> <i class="fa fa-minus-square-o"></i> </button>
<input type="text" name="qty" id="qty" maxlength="12" value="1" title="Qty" class="input-text qty">
<button type="button" class="increase items" onclick="var result = document.getElementById('qty'); var qty = result.value; if (!isNaN(qty)) result.value++;return false;"> <i class="fa fa-plus-square-o"></i> </button>
</div>
</div>
我使用這個功能
var str = document.getElementById("replace-input").innerHTML;
var res = str.replace(/HereIHaveToAddTheFirstString/g, "HereTheSecondOne");
document.getElementById("replace-input").innerHTML = res;
,但我不知道怎麼寫字符串才能被正確解析。
爲什麼不使用DOM方法來操作元素和/或它們的屬性,而不是嘗試執行字符串操作?此外,你不應該使用內聯js,它會最終難以管理 –
感謝您的評論。我想更改(替換)由生成頁面的框架的外部呈現引擎動態生成的元素。 –
你的函數引用了'.getElementById(「replace-input」)'但我在你的DOM中沒有看到這樣的元素。目前還不清楚你到底想要用什麼替代。 – jjmontes