与jQuery从另一个控制器视图替换DIV
想象我有以下“部分”,其通过一堆视图生成:与jQuery从另一个控制器视图替换DIV
<div id="funstuff">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
</div>
通过笨的使用情况,我可以重复使用次(我做很多),我想动态地用另一个视图中的内容替换'funstuff'div。它的控制方法仍然是在同一个班级:
class FunnyThings extends CI_Controller {
public function index() {
$this->load->view('funpage_view');
}
public function funview() {
$this->load->view('fun_partial_view');
}
}
基本上,使用jQuery我可以用不同的内容替换这一观点:
$('#funstuff').replaceWith('<div><h2>New heading</h2></div>');
但是,我怎么可以从另一种观点的内容,动态并将其替换为我选择的div?
感谢,
jQuery有所谓load()
这一个方便的方法,请参阅http://api.jquery.com/load/更多的信息。
在你的情况,该行会去是这样的:
$('#funstuff').load('FunnyThings/funview');
哪里FunnyThings/funview
是相对URL到控制器。
假设你知道其他视图的id
或class
,你可以这样做:
// if you know the class name (other-view)
$('#funstuff').replaceWith($(".other-view"));
// if you know the id (other-view)
$('#funstuff').replaceWith($("#other-view"));
这将是本地的,因为另一个答案指出,.load()方法做Ajaxified形式,因为我需要它:)谢谢,虽然! – Shyam 2011-04-21 13:02:58
对不起,我没有完全读你的问题。显然,如果你想加载一个外部资源,你必须使用'.load()'方法。 – 2011-04-21 13:04:15
精湛,正是我一直在寻找! – Shyam 2011-04-21 13:02:01