我有这段代码。
function index(){
$this->load->helper('url');
$this->load->view('EIM/home');
$this->loadGraphs();
}
但它首先执行loadGraphs。我真的不知道为什么。请帮我。我很难修复我的代码。谢谢:))
这是我的loadGraphs函数:
`function loadGraphs(){ $这 - >负载>辅助( 'URL'); $ CTR = 0; $ base_url = base_url(); $ xml = new DOMDocument; $ XML->负载( “” $ BASE_URL。 “资产/ EIM / XML / defaultChart.xml”); $ module_names = $ XML->的getElementsByTagName( “名称”); $ len_modules = $ module_names->长度; $ ctr_module = 0; 而($ ctr_moduleitem($ ctr_module) - >的getElementsByTagName( “报告”); $ len_reports = $报告 - >长度; $ ctr_report = 0; 而($ ctr_reportitem($ ctr_module) - >的getAttribute( “值”); $标题= $报告 - >项目($ ctr_report) - >的getElementsByTagName( “标题”) - >项(0) - >的nodeValue; $ dashboard_selected = $报告 - >项目($ ctr_report) - >的getAttribute( “ID”); 如果($ dashboard_selected == “仪表板”){ 回声“ $标题 $模块“; ?> var parameters = eval(getArray($ title,$ module));?>) 项($ ctr_report) - >的getElementsByTagName( “图表”) - >项(0) - >的getAttribute( “值”); $ defaultChart = $报告 - >项目($ ctr_report) - >的getElementsByTagName( “图表”) - >项(0) - >的getAttribute( “值”); echo“$ defaultChart”; $图表= $报告 - >项目($ ctr_report) - >的getElementsByTagName( “图表”) - >项(0) - >的getElementsByTagName( “图”); $ len_charts = $ charts->长度; $ ctr_chart = 0; 而($ ctr_chartitem($ ctr_chart) - >的nodeValue; 回声“ “;
$ctr_chart++;
}
echo"
<input type='submit' value='Set Chart as Default' onClick='set_default_chart('chart$ctr',$ctr_module,$ctr_report)'/>
";
echo "
<button class='btn btn-box-right' data-toggle='collapse' data-target='#container".$ctr."'>
<i class='icon-reorder'></i>
</button>
</div>
<div class='box-content box-list collapse in'>
<div id='container".$ctr."' style='min-width: 310px; height: 400px; margin: 0 auto'></div>
</div>
</div>
</div>
";
$ctr++;
}
$ctr_report++;
}
$ctr_module++;
}
echo "<label id='containers' value='$ctr'></label></div>";
}`
它有点长,但它的作用是它使容器准备好,我的java脚本可以加载并完全显示图形。它在document.ready函数中。在加载视图之前,它可能会优先考虑具有函数的代码吗?
答案 0 :(得分:0)
你可以尝试在加载后从视图中通过AJAX加载loadGraphs()函数的结果吗?所以基本上在$ this-&gt; load-&gt;视图('EIM / home')之后删除该调用,并在同一视图中,在documentReady中,使用简单的jQuery.Get函数来获取视图中所需的代码。如果在视图100%之后,那将加载。
http://api.jquery.com/jquery.get/
不确定您的流量是否是最好的方法,但这应该有用。
希望它有所帮助! :)