Ansicht: learning_view.phpcodeigniter - abhängig Drop-Down mit jquery und Ajax Post
Hier ist der erste Drop-Down, die ich aus der Datenbank bin bevölkern.
<select name = 'category' id = 'category'>
<option value="">-- Select Category --</option>
<?php foreach($category as $item){ ?>
<option value="<?php echo $item->id_cat; ?>"><?php echo $item->name; ?></option>
<?php } ?>
</select>
<br><br>
Was ich will, ist ein weiteres Drop-Down zu füllen, die auf der ersten Drop-Down-abhängig ist. Dafür habe ich den jQuery ajax post benutzt.
Sekunden Drop-Down:
<select name = 'type' id = 'type'>
<option value="">-- Select Type --</option>
<?php foreach($type as $item){ ?>
<option value="<?php echo $item->id_type; ?>"><?php echo $item->name; ?></option>
<?php } ?>
</select>
<br><br>
Ajax Beitrag:
jQuery(document).ready(function(){
$("#category").change(function() {
var category_id = {"category_id" : $('#category').val()};
console.log(category_id);
$.ajax({
type: "POST",
data: category_id,
url: "<?= base_url() ?>learning/dependent_dropdown",
success: function(data){
$.each(data, function(i, data){
console.log(data.name);
console.log(data.id_type)
});
}
});
});
});
Controller: learning.php
public function dependent_dropdown()
{
if(isset($_POST['category_id']))
{
$this->output
->set_content_type("application/json")
->set_output(json_encode($this->learning_model->getType($_POST['category_id'])));
}
}
Die Daten werden aus der Datenbank nach Ajax-Post kommen, die ich geprüft von
console.log(data.name);
console.log(data.id_type)
in der Konsole.
Aber konnte nicht herausfinden, wie Sie die Daten im zweiten Dropdown meiner Ansicht verwenden.
Ich meine, wie kann ich das zweite Dropdown mit den Daten bevölkern, die ich nach Ajax Post erhalten habe.
kann ich fragen, wo die Abfrage ist? danke –
Diese Arbeit für mich !! Vielen Dank! –