首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery从数据库动态添加组合框

jQuery从数据库动态添加组合框
EN

Stack Overflow用户
提问于 2018-03-13 09:15:07
回答 1查看 28关注 0票数 0

我想在点击时动态添加组合框。

但是combobox是从数据库中获取的。

代码语言:javascript
复制
<select name="articleNo" id="articleNo">
    <option value="">Choose Article No.</option>
    <?php
    $qArticle = oci_parse($c1, "SELECT * FROM WA_LA_TBL_ARTICLES WHERE ACTIVE = 'Y' ORDER BY ARTICLE_NO ASC");
    oci_execute($qArticle);

    require("../config/db_prd.php");

    while($dArticle = oci_fetch_array($qArticle))
    {
        $qModel = oci_parse($c1, "
            SELECT
            M.SEGMENT1,
            M.DESCRIPTION,
            C.INVENTORY_ITEM_ID,
            C.CATEGORY_SET_ID,
            C.CATEGORY_ID,
            K.CATEGORY_ID,
            K.CONCATENATED_SEGMENTS
            FROM
            MTL_SYSTEM_ITEMS M,
            MTL_ITEM_CATEGORIES C,
            MTL_CATEGORIES_B_KFV K
            WHERE
            M.INVENTORY_ITEM_ID = C.INVENTORY_ITEM_ID AND
            K.CATEGORY_ID = C.CATEGORY_ID AND
            M.ITEM_TYPE IN ('FG') AND
            M.INVENTORY_ITEM_STATUS_CODE = 'Active' AND
            K.CONCATENATED_SEGMENTS LIKE 'WH3-LEG-DIR' AND
            C.INVENTORY_ITEM_ID = '" . $dArticle['INVENTORYID_FK'] . "'
        ");
        oci_execute($qModel);
        $dModel = oci_fetch_array($qModel);
        ?>
        <option value="<?php echo $dArticle['ARTICLEID']; ?>"><?php echo $dModel['DESCRIPTION']; ?></option>
    <?php
    }
    ?>
</select>

和动态添加的jQuery

代码语言:javascript
复制
$(document).ready(function() {
var max_fields      = 10; //maximum input boxes allowed
var wrapper         = $(".input_fields_wrap"); //Fields wrapper
var add_button      = $(".add_field_button"); //Add button ID

var x = 1; //initlal text box count
$(add_button).click(function(e){ //on add input button click
    e.preventDefault();
    if(x < max_fields){ //max input box allowed
        x++; //text box increment
        $(wrapper).append('<div><input type="text" name="mytext[]"/><a href="#" class="remove_field">Remove</a></div>'); //add input box
    }
});

$(wrapper).on("click",".remove_field", function(e){ //user click on remove text
    e.preventDefault(); $(this).parent('div').remove(); x--;
})
});

在该jQuery上,您可以看到它将动态显示textbox。我想要的是从数据库中动态添加组合框。

您可以在演示中使用textbox动态引用此link

EN

回答 1

Stack Overflow用户

发布于 2018-03-13 09:35:06

一种方法(我不知道这是否是最好的方法)是用您的combobox代码创建一个PHP文件,然后在add_button单击函数中调用AJAX函数,然后在AJAX success: function()中将结果附加到包装器中。

查看代码以更好地理解

Combobox.php

代码语言:javascript
复制
<select name="articleNo" id="articleNo">
<option value="">Choose Article No.</option>
<?php
$qArticle = oci_parse($c1, "SELECT * FROM WA_LA_TBL_ARTICLES WHERE ACTIVE = 'Y' ORDER BY ARTICLE_NO ASC");
oci_execute($qArticle);

require("../config/db_prd.php");

while($dArticle = oci_fetch_array($qArticle))
{
    $qModel = oci_parse($c1, "
        SELECT
        M.SEGMENT1,
        M.DESCRIPTION,
        C.INVENTORY_ITEM_ID,
        C.CATEGORY_SET_ID,
        C.CATEGORY_ID,
        K.CATEGORY_ID,
        K.CONCATENATED_SEGMENTS
        FROM
        MTL_SYSTEM_ITEMS M,
        MTL_ITEM_CATEGORIES C,
        MTL_CATEGORIES_B_KFV K
        WHERE
        M.INVENTORY_ITEM_ID = C.INVENTORY_ITEM_ID AND
        K.CATEGORY_ID = C.CATEGORY_ID AND
        M.ITEM_TYPE IN ('FG') AND
        M.INVENTORY_ITEM_STATUS_CODE = 'Active' AND
        K.CONCATENATED_SEGMENTS LIKE 'WH3-LEG-DIR' AND
        C.INVENTORY_ITEM_ID = '" . $dArticle['INVENTORYID_FK'] . "'
    ");
    oci_execute($qModel);
    $dModel = oci_fetch_array($qModel);
    ?>
    <option value="<?php echo $dArticle['ARTICLEID']; ?>"><?php echo $dModel['DESCRIPTION']; ?></option>
<?php
}
?>
</select>

jQuery:

代码语言:javascript
复制
$(add_button).click(function(e){ //on add input button click
e.preventDefault();
if(x < max_fields){ //max input box allowed
    x++; //text box increment
    $.ajax({
    url : 'combobox.php',
    dataType : 'html',
    //Other AJAX call details
    success : function(response){
       $(wrapper).append(response); //Combobox Added
    }
    });
}
});

希望这能有所帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49246810

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档