javascript:使用 getElementByID 填充多个 div

标签 javascript html getelementbyid

有没有办法在客户端使用 javascript 将相同的内容写入页面上的多个 div 或多个点?

我有一个从数据库输出行的 php 脚本。要编辑内容,我想在每行之前插入一个复选框,就像 iPhone 编辑联系人一样,为了快速完成此操作,我尝试使用 javascript 使用 getElemenByID 在每行之前填充一个带有复选框的 div。

一个问题是一页上不能有多个同名的 div,因此我无法编写一次并让它填充多个同名的 div。如果我给 div 指定不同的名称,那么我必须多次写入,这没有吸引力,尤其是因为行数可能会有所不同。

作为一个相关问题,使用 javascript 插入的复选框是否可以工作?

这是无效代码:

js

function edit() }
var box = '<input type="checkbox name=num[]>';
var target = "checkbox";
document.getElementById(target).innerHTML = box;
return;
}//end function

html(由 PHP 从 dbase 生成)

<form action="edit.php" method="post">
<a href="javascript:void" onclick="edit()";>edit</a>
<div id="checkbox"></div>Row1 contents<br>
<div id="checkbox"></div>Row2 contents<br>
<form type = "submit" value="Edit">
</form>

有谁知道一种方法来做到这一点,即显示可以选择提交的框?

非常感谢您的任何建议。

最佳答案

应该使用 PHP 生成,但是...

HTML

我猜您想使用 span 元素(而不是 div)作为复选框占位符,否则您将在一行上有一个复选框,然后在下面出现“第 1 行内容”复选框,而不是文本旁边的复选框。

[X]
Row 1 Contents

与(跨度)

[X] Row 1 Contents

 

<form action="edit.php" method="post" name="frmRows" id="frmRows">
    <a href="javascript:void(0)" onclick="edit()">edit</a>
    <span class="checkbox"></span>Row1 contents<br>
    <span class="checkbox"></span>Row2 contents<br>
    <input type = "submit" value="Edit">
</form>

JavaScript

除非绝对必要,否则不建议在 JavaScript 中使用 .innerHTML(并非所有浏览器都支持,并且有更好的方法来完成相同的任务。)

function edit() {
    var newCb;
    var i;
    var checkboxList = document.getElementsByClassName( 'checkbox' );

    for ( i = 0; i < checkboxList.length; i++ ) {

        newCb = document.createElement( 'input' ); // Create a new input element

        newCb.setAttribute( 'type', 'checkbox' ); // Set attributes for new element
        newCb.setAttribute( 'value', 'SomeValueHere' );
        newCb.setAttribute( 'name', 'checkboxName' );
        newCb.setAttribute( 'id', 'checkbox-' + i );

        checkboxList[i].appendChild( newCB ); // Add checkbox to span.checkbox
    }
}

关于javascript:使用 getElementByID 填充多个 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12612391/

相关文章:

javascript - 我尝试将所有黑色代码更改为白色代码

javascript - 使用 Javascript 在页面加载时缩放 div

javascript - 为什么存在 document.getElementById() 函数?

ASP.NET 控件的 JavaScript getElementById 返回空值?

javascript - 使用 JavaScript 更改选择标签值

javascript - 如何检测某个键是否被按下

javascript - 在页面上所有文本框前面添加 $ 符号

javascript - 是否可以检查图像是由相机拍摄的还是通过 JavaScript 从照片库上传的?

html - html表中的mysql输出-shell脚本

html - 判断url内容是否发生变化