javascript - 如何通过从 javascript 函数的 <td> 调用 jquery 函数来基于类别加载子类别以动态添加行?

标签 javascript php jquery html mysql

当我单击添加行按钮时,类别下拉列表加载成功,但是当我从此类别列表中选择一个选项时,子类别不加载任何列表。

动态添加行的Javascript函数:

<script type="text/javascript">
    $(document).ready(function(){
        var i=1;
        $("#add_row").click(function(){
            $('#addr'+i).html("<td>"+ (i+1) +"</td>   <td><select name='parent_catt"+i+"' id='parent_catt' class='form-control input-md'><?php while($row2 = $query2_parent->fetch_array()): ?><option value='<?php echo $row2["cat_id"]; ?>'><?php echo $row2["category"]; ?></option><?php endwhile; ?></select></td><td><select name='sub_catt"+i+"' id='sub_catt' class='form-control input-md'></select></td><td><input  name='mobile"+i+"' type='text' placeholder='Mobile'  class='form-control input-md'></td><td><input  name='mobile"+i+"' type='text' placeholder='Mobile'  class='form-control input-md'></td><td><input  name='mobile"+i+"' type='text' placeholder='Mobile'  class='form-control input-md'></td>");

            $('#tab_logic').append('<tr id="addr'+(i+1)+'"></tr>');
            i++; 
        });

        $("#delete_row").click(function(){
            if(i>1){
                $("#addr"+(i-1)).html('');
                i--;
            }
        });

    });                     
</script>

加载子类别的 jQuery 函数:

<script type="text/javascript">
$(document).ready(function() {

    $("#parent_catt").click(function() {
        alert("clicked");
        $(this).after('<div id="loader"><img src="images/loading.gif" alt="loading subcategory" /></div>');
        $.get('loadsubcat.php?parent_catt=' + $(this).val(), function(data) {
            $('#sub_catt').html(data);
            $('#loader').slideUp(200, function() {
                $(this).remove();
            });
        }); 
    });

});
</script>

获取详细信息的 PHP 代码:

<?php 
include('dbconnect.php');


$parent_catt = $_GET['parent_catt'];

$query2 = $con->query("SELECT * FROM subcategory WHERE cat_id = '$parent_catt'");
while($row2 = $query2->fetch_array()) {
    echo "<option value='$row2[subcat_id]'>$row2[subcategory]</option>";
}
?>

最佳答案

替换这一行

$("#parent_catt").click(function() {

由此

$(document).off("click", "#parent_catt").on("click", "#parent_catt", function(){

关于javascript - 如何通过从 javascript 函数的 <td> 调用 jquery 函数来基于类别加载子类别以动态添加行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42760015/

相关文章:

javascript - 动态更改样式表路径在 IE 和 Firefox 中不起作用

javascript - 如何将 JSON 对象从快速服务器发送到下一个 js 页面?

php - 设置一个 cookie 供 cURL 使用

javascript - 如何使用 jquery 查找选定的行

javascript - 如何使用 showdown.js 将表格文本打印到 md 表格?

javascript - 如何中止淡出 jqueryui 菜单?

javascript - AngularJS 路由在 IE7 中不起作用

javascript - 如何使用 javascript/jquery 检测最后一个或第一个列表项是否显示在其容器中

php - 使用 API 存储在数据库中的笑脸图标无法正确显示

php - 如何返回元素的类?