对同一ID上的多个值执行Javascript


Javascript multiple values on the same ID

我在php中有一个循环,它会回显<input type="hidden" id="lol" value=$id />

正如您所理解的,每次循环通过时,我都会在隐藏的输入字段中获得一个新值。

现在,我正试图从这些项中获取值,并使用Javascript和SAJAX获取它。javascript im正在使用,但是!它只获取第一个值(因为每个输入的ID都相同)

Javscript:

function Showbooking() {
    id = document.getElementById('lol').value;
    x_showBookingForm(id, do_showBookingForm);
}
function do_showBookingForm(html) {
    openPopup(600, 550, html);
}

正如您所看到的,我也用javascript打开了一个POPUP,并将值导出到弹出窗口中。

因此,在每次弹出时,我都会得到相同的值(第一次输入的值)。

我该如何解决这个问题?

  1. 将ID更改为名称
  2. 使用document.getElementsByName并循环
var lols = document.getElementsByName("lol");
var vals=[];
for (var i=0, n=lols.length;i<n;i++) {
  vals.push(lols[i].value);
}
alert(vals.join(","));

getElementById表示元素而不是元件,因为它只返回一个项。CCD_ 3应该是唯一的。你可以做一些效果:

var inputs = document.getElementsByTagName("input");
var values = [];
for(var i=0;i<inputs.length;i++){
    if(inputs[i].type === "hidden"){
        values.push(inputs[i].value;
    }
}