而我的另一個問題是,代碼是否正確,我的AJAX請求是否會到達我的控制器?codeigniter中的AJAX沒有找到基地址
下面是對代碼的相關部分:
我的觀點(我有這樣的一個帖子的形式,因爲我要發送另一個表中的數據):
<script> var base_url = <?php echo base_url(); ?> </script>
<label for="exampleInputEmail1">Apartament</label>
<select onchange="showUser(this.value)" name ="txtApartament1" class="form-control">
<?php foreach($getEntry as $value) { ?>
<option><?php echo $value->apartament ?></option>
<?php }?>
</select>
在相同的觀點,這是我的AJAX部分:
function showUser(str) {
if (str == "") {
document.getElementById("txtApartament1").innerHTML = "";
return;
} else {
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
} else {
// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("txtApartament1").innerHTML = this.responseText;
}
};
xmlhttp.open("GET", base_url + "usercontroller/ajaxp?q="+str,true);
xmlhttp.send();
}
}
這是我的控制器 - 用戶控件ler.php功能:
public function ajaxp(){
echo "received";
}
我會得到這個錯誤:
(index):257 Uncaught ReferenceError: base_url is not defined at showUser (localhost/adminigniter1/:257:29) at HTMLSelectElement.onchange (localhost/adminigniter1/:205:89)
我的項目文件名是codeigniter1!
我沒有在codeigniter上設置任何配置文件。我是不是該 ?還要別的嗎?
沒有你加載網址幫手。 –
base_url函數不是變量。它應該是base_url() –
是的Hek:$ autoload ['helper'] = array('url','form'); – Bogdan