php mysql用添加按钮填充几个动态下拉列表

时间:2016-04-07 20:46:11

标签: javascript php jquery html mysql

这是我的第一篇文章:) 我有一个mysql数据库和一个表单,您可以选择要订购的内容。我不得不说,对于输入字段,它可以工作,但是在动态下拉菜单方面我遇到了问题。这就是我所拥有的(两个查询):

<?php
// Getting the data from mySQL table for first list box
$quer1="SELECT DISTINCT kategorija FROM artikli order by kategorija"; 

// for second dropdown list we will check if category is selected else we will display all the subcategories

if(isset($kategorija) and strlen($kategorija) > 0) {
    $quer2="SELECT artikel FROM artikli where kategorija='$kategorija' order by artikel";
}
else {
    $quer2="SELECT artikel FROM artikli order by artikel"; 
}
?>

<form id="forma_narocilo" action="naroci.php" method="POST">
<div class="input_fields_wrap">
    <div>

        <select name="kategorija" id="kategorija" ><option value="">Izberi kategorijo</option>
        <?php
            foreach ($dbo->query($quer1) as $row2) {
                if($row2['kategorija']==$kategorija) {
                    echo "<option id='izbirna_kategorija' selected value='$row2[kategorija]' onchange='self.location=self.location+'?kategorija='+this.options[this.selectedIndex].value'>$row2[kategorija]</option>"."<br />";
                }
                else {
                    echo  "<option id='izbirna_kategorija' value='$row2[kategorija]'>$row2[kategorija]</option>";
                }
            }
            echo "</select>";

            echo "<select name='artikel[]'><option value=''>Izberi artikel</option>";
            foreach ($dbo->query($quer2) as $row) {
                echo  "<option value='$row[artikel]'>$row[artikel]</option>";
            }
            echo "</select>";

?>
            <input type="number" name="kolicina[]"/><button class="add_field_button">Add line</button>
    </div>
</div>
<input type="submit" id="shrani" value="Save" >
</form>

这很好用,它正在根据我的需要更新字段,但现在我需要一个“添加”按钮,它将插入另一行所有三个字段(category,item,nrPcs)。对于普通的html输入,我使用了这个:

$(document).ready(function() {

var max_fields  = 25; //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>'+x+'<input type="text" name="artikel[]"/><input type="text" name="kolicina[]"/><a href="#" class="remove_field">X</a></div>'); //add input box
    }
});

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

这将在里面添加一个和两个输入。对于重新加载,我使用这个:

function reload(){
    var form = document.getElementById("forma_narocilo");
    var val = form.kategorija.options[form.kategorija.options.selectedIndex].value;
        self.location='?kategorija=' + val ;
    }
    function init(){
        document.getElementById("kategorija").onchange = reload;
    }
    window.onload = init;

现在,我的问题是,如何在点击添加按钮时插入下拉列表?当然它应该作为第一个例如它必须是独立的......

谢谢,erik

0 个答案:

没有答案