我试图获取用户在动态生成的选择中动态生成的选项上选择的选项的值。现在我只是试图提醒一下,但是已经彻底失败了。JQuery获取选择的动态生成的选项的值
我试过使用docuement.ready里面的.change文件夹,但那不起作用,我想这可能是因为它不存在要绑定到的元素。代号为.change
$(document).ready(function() {
$(".lowerSerialSelect").change(function() {
alert("red")
});
});
下面是我使用动态生成的选择代码:
if (_interface == "network" && _deviceName == "Not in Use")
{
var lowerSerialTd = document.createElement("td");
lowerSerialTd.className = "lowerSerial";
trTag.appendChild(lowerSerialTd);
var lowerSerialSelect = document.createElement("select");
lowerSerialSelect.className = "lowerSerialSelect";
lowerSerialSelect.name = "lowerSerial" + identifier;
lowerSerialSelect.id = _interface + "lowerSerial" + identifier;
var lowerSerialOption = document.createElement("option");
lowerSerialSelect.appendChild(lowerSerialOption)
for (newDevice in newNetworkDevices)
{
alert(newNetworkDevices[0]);
var lowerSerialOption = document.createElement("option");
lowerSerialOption.innerHTML = newNetworkDevices[newDevice][0];
lowerSerialOption.className = "networkMacOption";
lowerSerialOption.id = _interface + "lowerSerial" + identifier;
lowerSerialOption.value = newNetworkDevices[newDevice];
lowerSerialSelect.appendChild(lowerSerialOption)
}
lowerSerialTd.appendChild(lowerSerialSelect);
alert("Maybe");
}
正因为此,在.change不绑定到尚未创建的元素呢?
如果可以,我每次创建一个新选择时都可以通过重新绑定来解决此问题? (用户将触发新的选择,所以它不会一次完成)
我也试过了$(“select”.on(“change”,“option”,function(){alert (“red”);});但无济于事,任何帮助或解释,将不胜感激
这是在一个配置页面,所以代码很长,800一些行,所以我不想发布整个事情。
感谢
**编辑**
是动态生成HTML d看起来这到底:
<select class="lowerSerialSelect" name="lowerSerial2" id="networklowerSerial2">
<option></option>
<option class="networkMacOption" id="networklowerSerial2" value="0080A39166BA,192.168.1.59,47331,1363895658.22">0080A39166BA</option>
</select>
因此,对于任何人遇到同样的问题,我的问题是使用jQuery的过时的版本,并使用jQuery的工具过时的版本的组合。 – Poodimizer 2013-03-22 15:21:40