通过js动态创建标签,并设置属性方法

当我们在写jsp页面时,往往会遇到这种情况:从后台获取的数据个数不确定,此时在前端写jsp页面时也就不确定怎么设计了。这个时候就需要通过js动态创建标签:

1.创建某个标签:如下在body中创建一个div的事例;

<script>
 function fun(){
 var frameDiv = document.createElement(\"div\");//创建一个标签
 var bodyFa = document.getElementById(\"bodyid\");//通过id号获取frameDiv 的父类(也就是上一级的节点)
 bodyFa .appendChild(frameDiv);//把创建的节点frameDiv 添加到父类body 中;
 }
<script>
<body id=\"bodyid\" >
<!--在此添加div标签-->
</body>

2.添加属性:给创建的标签添加相应的属性:

frameDiv .setAttribute(\"id\", \"divid\");//给创建的div设置id值;
frameDiv .className=\"divclass\"; //给创建的div设置class;
//给某个标签添加显示的值;
var h = document.createElement(\"h1\");
h.innerHTML = data[i].name;
var p = document.createElement(\"p\");
p.innerHTML = \"要显示的值\";

3.创建的标签添加事件:

a.不带参数:

frameDiv.onmousedown = fun;//ps:函数名fun后面一定不能带括号,否则会在创建标签的时候执行函数, 而不是鼠标按下时执行;

b.有参数:

frameDiv.onmousedown = function(){ fun(this); }

c.要调用的函数;

function fun(){ 
alert(\"鼠标按下\");
}

4.如果担心创建的标签没有被覆盖则可以替换:

 var divFlag = document.getElementById(\"divFlag\");
 var divMain = document.createElement(\"div\");
 if(divFlag != null){
 body.replaceChild(divMain, divFlag);//把原来的替换掉
}
divMain.setAttribute(\"id\", \"divFlag\");

以上这篇通过js动态创建标签,并设置属性方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容