javascript - 有没有办法用变量替换 HTML 标签中的值并要求值来构造 html?
问题描述
1)假设,我的电子邮件模板如下所示:https ://www.w3schools.com/w3css/tryit.asp?filename=tryw3css_templates_cafe
我正在寻找一种解决方案,允许我在 HTML 代码中声明这样的变量:https ://www.w3schools.com/code/tryit.asp?filename=G2F7R2ICIWLW
在这个例子中,你可以看到,我提到了超链接源作为变量。:
<div class="w3-top">
<div class="w3-row w3-padding w3-black">
<div class="w3-col s3">
<a href="@home" class="w3-button w3-block w3-black">HOME</a>
</div>
<div class="w3-col s3">
<a href="@about" class="w3-button w3-block w3-black">ABOUT</a>
</div>
<div class="w3-col s3">
<a href="@menu" class="w3-button w3-block w3-black">MENU</a>
</div>
<div class="w3-col s3">
<a href="@where" class="w3-button w3-block w3-black">WHERE</a>
</div>
</div>
</div>
文本也类似:
<p>@myrow1text</p>
如何在 JavaScript 中创建一个解决方案,询问我在单独的文本框中在 HTML 代码上定义的所有变量的值,然后当我输入所有值并单击提交按钮时,它会为我提供带有替换值的完整 HTML,这样我就可以复制 HTML 代码并在任何地方使用它?
解决方案
我已经创建了一个代码,但无法完成它。也许你或其他人可以解决最后一个问题))
JsFiddle
<textarea id="ENTER">Here your HTML with multiple (same) variables @BUBU</textarea>
<button id="create">Create</button>
<button id="submit">Submit</button>
<div id="content">Appending created textareas here</div>
<textarea id="result"></textarea>
JS:
document.getElementById('create').addEventListener('click',function(){
let E = document.getElementById('ENTER');
let N = E.value.match(/@BUBU/g).length; //getting the number of your variables
for(let i = 0; i < N; i++){//creating N textareas with class="moo"
let Z = document.createElement('textarea');
Z.className = "moo";
document.getElementById('content').appendChild(Z);
}
});
document.getElementById('submit').addEventListener('click',function(){
let M = document.getElementsByClassName("moo");//getting created textareas
let E = document.getElementById('ENTER');
let x;
for(let i = 0; i < M.length; i++){
//here it must replace each @BUBU with entered value of area, but it doesn't
x = E.value.replace(/@BUBU/ig,M[i].value);
}
document.getElementById('result').value = x;
});
推荐阅读
- mysql - MySQL join:即使第二个表没有匹配的数据,如何从一个表中获取结果
- android - 在片段中隐藏键盘屏幕
- php - Laravel 5.3 foreach 来自 2 个不同模型的 2 个集合
- swift - Swift4 中的 RxCocoa 映射可选错误,带有“无法转换类型“字符串?”的值
- ruby-on-rails - Rails 链接到显示以外的其他视图
- node.js - strpi 适合提供 html,还是用作传统的 mvc web 框架?
- javascript - 将 redux 状态映射到 props 不起作用
- angularjs - AngularJS 不通过 $http 提供者拦截 http
- r - 为什么带有 geom_point() 的 autoplot() 不会在函数中使用变量
- bootstrap-4 - Bootstrap 4 Carousel 多张图片滑动延迟