我已经使用jquery load
函数
在我的 profile.blade.php
中 <script type="text/javascript">
$(document).ready(function(){
$("#newJob").load('/company/new-job');
});
</script>
<script src="js/location.js"></script>
在我的location.js
我正在使用
document.getElementById('autocomplete')
获取html元素
但此元素位于company/new-job
文件
问题我在document.getElementById('autocomplete')
这部分
当我直接包含location.js
工作正常
答案 0 :(得分:0)
尝试使用$(document).ready(function(){
$("#newJob").load('/company/new-job', null, function(){
$.getScript('js/location.js');
});
});
的回调函数插入您想要的脚本:
$directory = "./images/";
$config['upload_path'] = $directory;
$config['encrypt_name'] = TRUE;
$config['allowed_types'] = 'gif|jpg|png|jpeg';
if (!$this->upload->do_upload('mainimage'))
{
$error = array('error' => $this->upload->display_errors());
print_r($error);
}
else {
$data = array('upload_data' => $this->upload->data());
print_r($data);
}
答案 1 :(得分:0)
您需要在location.js
返回的html页面中加入/company/new-job
才能使其正常运行。
或尝试加载以下js。 (未经测试)
$(document).ready(function(){
$("#newJob").load('/company/new-job',function(data){
//here you can get the elements from /company/new-job.
$.getScript('js/location.js').done(function(data, textStatus, jqxhr) {
//here you can call functions from location.js
});
});
});
答案 2 :(得分:0)
您的脚本<script src="js/location.js"></script>
在$(document).ready(function()之前加载,您的元素将在文档准备就绪后加载.load mehtod。
所以这里需要做的是必须在元素渲染后添加脚本。否则document.getElementById('autocomplete')
找不到元素并产生错误。
$(document).ready(function(){
$("#newJob").load("/company/new-job", function(responseTxt, statusTxt, xhr){
if(statusTxt == "success")
$.getScript('js/location.js');
if(statusTxt == "error")
alert("Error: " + xhr.status + ": " + xhr.statusText);
});
});