使用Javascript document.write构建字符串
我正在尝试从javascript编写一个div元素。我希望使用document.write()按如下方式编写行:使用Javascript document.write构建字符串,javascript,string,concatenation,document.write,Javascript,String,Concatenation,Document.write,我正在尝试从javascript编写一个div元素。我希望使用document.write()按如下方式编写行: 我使用以下命令调用写入div元素的函数: <script type="text/javascript"> colorPicker("box1"); </script> 颜色选择器(“框1”); 我尝试了document.write()方法,通过几种不同的方式构建字符串,例如: function colorPicker(box) {
我使用以下命令调用写入div元素的函数:
<script type="text/javascript">
colorPicker("box1");
</script>
颜色选择器(“框1”);
我尝试了document.write()方法,通过几种不同的方式构建字符串,例如:
function colorPicker(box) {
var box = document.getElementById(box);
var boxid = box.id;
var AquaStr1 = '<div class="AquaSquare15px" onmouseover="changeColor("';
var AquaStr2 = '")></div>';
var AquaString = AquaStr1.concat(boxid, AquaStr2);
document.writeln(AquaString);
}
函数颜色选择器(框){
var-box=document.getElementById(box);
var-boxid=box.id;
var AquaStr1='我想问题可能是引号。应该是:
var AquaStr1 = '<div class="AquaSquare15px" onmouseover="changeColor(\'';
var AquaStr2 = '\')"></div>';
改用另一个名字,比如
function colorPicker(boxid) {
var box = document.getElementById(boxid);
尽管如此,通过id获取元素并在读取之后读取其id没有多大意义:
var box = document.getElementById(box);
var boxid = box.id;
您已将ID作为函数参数
建议结果:
function colorPicker(boxid) {
var AquaStr1 = '<div class="AquaSquare15px" onmouseover="changeColor(\'';
var AquaStr2 = '\')"></div>';
var AquaString = AquaStr1.concat(boxid, AquaStr2);
document.writeln(AquaString);
}
您在属性值中使用引号,而没有使用HTML编码。此外,您缺少属性值的结束引号,因此结束标记和其他一些代码将在属性中结束
您可以避开引号:
var AquaStr1 = '<div class="AquaSquare15px" onmouseover="changeColor("';
var AquaStr2 = '")"></div>';
var AquaStr1='';
或者可以使用撇号,但需要在字符串中转义:
var AquaStr1 = '<div class="AquaSquare15px" onmouseover="changeColor(\'';
var AquaStr2 = '\')"></div>';
var AquaStr1='';
正如评论部分所指出的:你不应该使用文档。写。
但是,字符串连接出错。请尝试以下操作:
function colorPicker(box) {
var boxid = document.getElementById(box).id;
var aquaStr = '<div class="AquaSquare15px" onmouseover="changeColor(\''+boxid+'\')"></div>';
document.writeln(aquaStr);
}
函数颜色选择器(框){
var-boxid=document.getElementById(box.id);
var aquaStr='';
书面文件(aquaStr);
}
不要使用文档。编写:这将在代码中以onmouseover='changeColor(“+boxid+”)
结束,而不使用变量boxid
。
$('body').append(AquaString);
var AquaStr1 = '<div class="AquaSquare15px" onmouseover="changeColor("';
var AquaStr2 = '")"></div>';
var AquaStr1 = '<div class="AquaSquare15px" onmouseover="changeColor(\'';
var AquaStr2 = '\')"></div>';
function colorPicker(box) {
var boxid = document.getElementById(box).id;
var aquaStr = '<div class="AquaSquare15px" onmouseover="changeColor(\''+boxid+'\')"></div>';
document.writeln(aquaStr);
}