我正在做一个小项目,基本上是Codeigniter上的CRUD类型项目。我正在使用Messi Jquery Modal Library,加载Messi.load ajax的控制器。奇怪的Ajax行为
问题。
// Edit Operator
$('.edit_details').on('click', function() {
var edit_id = $(this).attr('id');
$.getScript("<?php echo $this->config->base_url() ?>media/js/jquery-1.10.2.min.js");
Messi.load('<?php echo $this->config->base_url() ?>index.php/option/detail/' + edit_id);
$.getScript("<?php echo $this->config->base_url() ?>media/js/validation.js");
});
当我加载使用Ajax模式中,我还加载jQuery库和模态内容jQuery的一些功能,例如validation.js
控制器
// check operator
public function detail($id)
{
$this->load->model('Option_Model', 'option');
$data['result'] = $this->option->checkOperator($id);
$data['states'] = $this->option->getStates();
$this->load->view('option', $data);
}
一切完美,除了即ajax加载问题。我几乎完成了项目,突然发现,simetimes jquery无法正常工作。
例如:
当我加载的梅西模框之一,我也用$ .getscript和负载ip.address.js jQuery插件,因为我加载一些认为需要IP地址检查。有时有效,有时不会。我搜索了所有可能的东西,尝试了我所能做到的,但无法理解问题的原因,为什么它有时会起作用,有时候却不能。
我在这些模式框中也有很多ajax jquery函数,它们工作正常,但函数,从$。脚本加载有时会遇到问题。
编辑: 这里是我的模式框中的IP地址声明。
var ipAddress = (function(){
$('.ip').ipAddress();
});
ipAddress();
魔术 前两次尝试没有成功,第三个工作。
'...不是函数'错误发生,因为当函数被调用时,没有类“ip”的元素存在;那么问题就是弄清楚为什么会发生这种情况以及如何防止它发生。 –