[英]Ajax onchange combobox not working
我知道這個問題在本網站的許多其他情況下都曾被問過。 但是,我仍然沒有解決我問題的正確答案。
我想使我的組合框和文本區域的ajax函數。 因此,當我在組合框中選擇一個選項時,textarea中的文本將根據組合框的選定值而變化。
更新:我的textarea代碼
這是我的組合框和textare代碼:
<select class="form-control" name="option_template" id="template" onchange="get_template(this.value);">
<option value="" selected="" disabled=""> -- Pilih Template --</option>
<?php foreach ($template as $template){
?>
<option value="<?php echo $template['id'];?>"><?php echo $template['nama'];?></option>
<?php }
?>
</select>
<div class="col-md-8 col-sm-8 col-xs-12">
<textarea id="template-content"></textarea>
</div>
這是我的javascript函數和ajax
<script type="text/javascript">
// alert("hai");
function get_template(id){
alert(id);
$.ajax({
method:"POST",
url:'<?php echo base_url();?>broadcast/ajax_template',
data:{option:id},
succes:function(msg){
alert(msg);
$('#template-content').val(msg);
}
});
}
</script>
最后一個,這是我的php函數,它從ajax檢索帖子
public function ajax_template(){
$id=$this->input->post('option');
$q=$this->M_template->get_template($id)->row_array();
echo "Test output".$q['content'];
}
當我運行上面的代碼時, alert(id); 在javascript get_template()函數語法中正常工作,因此每次選擇選項時我都會得到選項值。 但是問題是我無法從ajax的帖子中獲取輸出數據。 有人可以幫我嗎? 我知道這可能是基本知識,但是我已經花了數小時來解決這個問題,謝謝:)
這很奇怪,我不知道為什么我以前的代碼無法正常工作。 但是我發現了一種新方法,可以通過將change()函數用於select語法並使用get方法而不是post來實現。
這是我的javascript和ajax函數
$("#template").change(function() {
var e = document.getElementById("template");
var id = e.options[e.selectedIndex].value;
$.ajax({
url: '<?php echo base_url();?>Broadcast/ajax_template?option='+id,
success: function(msg){
$('#template-content').val(msg);
}});
});
我刪除了我選擇語法的onchange屬性,並更改了php函數以從發布 獲取 ID以獲得
$id=$this->input->get('option');
更改您的ajax_template()方法
您正在從M_template作為數組獲得響應。 您不能像這樣回顯數組。 使用echo json_encode($ arrayname)。 在您的情況下echo json_encode($ q ['content']);
並確保在ajax中提到dataType:'json'
你能給我打電話嗎
public function ajax_template(){
$id = $this->input->post('option');
$q=$this->M_template->get_template($id)->row_array();
echo "Test output".$q['content'];
exit;
}
不使用ajax並檢查它是否顯示任何內容。 請在$id
變量上傳遞靜態值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.