我正在尝试制作一个表格,简单吧?不完全的。
我目前有两个选择框的表单设置,当使用 onchange 函数更改时第一个选择运行一个生成第二个选择框的 php 页面。
然后我有另一个函数,它添加了 2 个选择框的另一个“实例”,这样我就可以一次向表中添加多行,而不必一次输入一个。
当我添加更多“实例”时出现问题,onchange 函数将第二个选择框的原始和新“实例”视为同一个。
正如我所看到的,我最好的选择是动态命名函数和包含第二个选择框的 div,这是我卡住的地方。我的问题是,我将如何更改“showDim”函数和“dimdiv”div id 以使它们匹配?
js函数调用Dim选择框;
<script>
function showDim(str)
{
if (str=="")
{
document.getElementById("dimdiv").innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("dimdiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","get_dim.php?id="+str,true);
xmlhttp.send();
}
</script>
html/php 用于第一个选择框和包含第二个选择框的 div;(其他功能根据我的需要多次复制这部分)
<label>Style:</label>
<select name='Style' id='Style' onchange="showDim(this.value)">
<option value='0' class='red'>Select a style...</option>
<?php
include ('connect.php');
$getsty = $db->prepare("SELECT Style_ID, Style_Type FROM style ORDER BY Style_Type ASC LIMIT 1, 18446744073709551615;");
$getsty->execute();
while($row = $getsty->fetch(PDO::FETCH_ASSOC)) {
$Style_ID = $row['Style_ID'];
$Style_Type = $row['Style_Type'];
echo " <option value='$Style_ID'>$Style_Type</option>";
}
?>
<br>
<div id='txtHint2'>
<label>Dimensions:</label>
<select name='Dim'>
<option value='0' class='red'>Select the dimensions...</option>
</select>
</div>