用javascript添加HTML标签
Adding HTML tag with javascript
我有一个问题,而动态添加html标签。我正在创建一个输入标签
var valueString = $("#className").val();
var htmlString = "<input type='hidden' id='class' name='class' value='"+ valueString +"' />"
现在的问题是,当"valueString"包含撇号(')时,创建的输入值与撇号断开。如何将变量附加为单个字符串?
如果我用双引号(")改变撇号('),那么当变量包含双引号(")时就会出现问题。
不要通过将字符串混在一起来构建HTML,这是导致这类问题的主要原因。使用DOM(或jQuery包装器)代替。
var valueString = $('#className').val();
var $input = $("<input />", {
type: "hidden",
name: "class",
value: valueString,
id: "class"
});
然后可以将其附加到文档中。如果你真的需要一个HTML字符串,你可以:
var htmlString = $("<div />").append($input).html();
var valueString = "Example'" input' with special < characters >";
var $input = $("<input />", {
type: "hidden",
name: "class",
value: valueString,
id: "class"
});
var htmlString = $("<div />").append($input).html();
alert(htmlString);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
尝试正确连接single quote
,
valueString = valueString.replace('/"/',""")
var htmlString = '<input type="hidden" id="class" name="class" value="'+ valueString +'" />';
作为新问题的解决方案,您必须将报价替换为相关的html编号。要替换它,简单的/"/
正则表达式将有所帮助。如果您想替换所有实例,那么只需在regex的末尾添加g
。
按以下格式使用
var valueString = $("#className").val();
$('<input />').attr('type','hidden').attr('id','class').attr('value',valueString).addClass('class');
在做任何你想做的事情之后,比如添加到dom或需要HTML和任何其他
相关文章:
- 如何在tinymce编辑器中将点击事件绑定到html标签
- 从模板标签获取html
- 如何将具有相同功能的两个select html标签的两个JS组合在一起
- Html不是'我没认出Angularjs吐出来的标签
- 带有html标签的Summernote内容
- 为什么我的HTML标签消失了
- 不使用自定义CSS或HTML(使用框架方法)的角度材质文本输入或文本区域标签大小
- 如何忽略单词like“”中的未使用空格;测试-文本”;同时构建html标签
- 在AngularJS中过滤-html标签中的文本
- 如何在另一个 html 标签内选择 web 元素硒 Web 驱动程序与 html 源
- 选择标签 HTML 上的值将数组转换为字符串 Javascript
- 如何以编程方式切换标签HTML/js
- 如何使用NodeJs删除非标签Html元素
- 知道什么时候“音频”标签HTML已经发挥了作用
- 通过标签html中的照片列表更改
- 标签内的另一个标签html
- Sup标签内的标题标签html
- 当我选择另一个选择标签HTML<选择>
- 从节点检索标签HTML
- 如何从网页中删除所有标签(HTML JS PHP CSS JQUERY)