动态添加行后,动态下拉列表不起作用

时间:2017-05-13 09:31:28

标签: javascript php html

我是php和javascripts的新手。我必须通过单击按钮来创建动态添加或删除行,我正在使用表格,javascript工作正常。我还在上面动态添加的元素的行中有一个动态下拉淹没列表。现在,当我的表中只有一行时,动态下拉列表工作正常,因为该函数将id作为参数发布到哪里。但是当我添加更多行时,动态下拉列表总是指向第一行id。我不知道如何设置动态ID或者是否可以更改id。这是代码:

<table id="dataTable"  class="form"  border="1"> <!--class="form" -->
 <tbody>

   <tr>
    <p>
    <td >
        <input id="checkbox1" type="checkbox" class = 'chk' name="chk[]"  />
    </td>
    <td>
    <label>Server Type</label>
    <select id="BX_Server_Type" name="BX_Server_Type[]">
        <option value="">Select Server</option>
        <option>EMAIL Server</option>
        <option>Web Server</option>
        <option>FTP Server</option>
        <option>DNS Server</option>
        <option>WAP Server</option>
        <option>AUTHETICATION Server</option>
    </select>
    </td>

    <td>
    <label for="BX_Vendor">Server Vendor</label>
    <select id="BX_Vendor" name="BX_Vendor[]" selected **onChange="getProduct(this.value,'Product_list1');"  >**
    <option value="" selected>Select Vendor</option> 
    <?php
        $sql="SELECT DISTINCT firewall.VENDOR FROM firewall";
        $result=$dbhandle->query($sql);
        while ($rs=$result->fetch_assoc()){
            ?>
            <option value="<?php echo $rs["VENDOR"]; ?>"><?php echo $rs["VENDOR"]; ?></option>
    <?php
        }
    ?>
    </select>
    </td>

    <td>
    <label >Server Product </label>
    <select id="Product_list1" class="testclass" name="BX_Product[]"> 
    <option value="">Select Product</option> 
    </select> 
    </td>

    <td>
    <label for="BX_Number">No of Server</label>
    <input id="BX_Number[]" name="BX_Number"> 
    </td>
    </p>
  </tr>

 </tbody>
</table> 

函数getProduct(this.value,'Product_list1')将id'Product_list1'用于发布查询结果。

<script>
function getProduct(val1,val2)
{
    $.ajax({
        type:"POST",
        url: "get_product.php",
        data: 'VENDOR='+val1,
        success: function (data){
            $("#"+val2).html(data);
        }
    });
}
</script>

如果我有一个静态id,上面的函数可以正常工作,但是现在当我动态地在表中添加行时,它不起作用。任何人都可以帮助我,请如何让它工作?

添加和删除行只是工作正常,只有在添加新行后动态下拉列表中出现问题。请帮忙。

感谢。

1 个答案:

答案 0 :(得分:0)

我认为你的意思是&#34;级联组合框&#34; ?

如果是这样,这里的链接可以帮助您: http://www.infotuts.com/cascaded-dropdown-jquery-ajax-php/