jquery与动态模板div行构建

时间:2009-08-12 00:34:49

标签: php javascript jquery ajax dynamic

好的我有一个网站,其中有许多不同的模板,每个模板都有不同的htmls。 我想知道如何使用jquery动态分页为其部分呈现每一行?

我不想将html存储在var中,因为它随模板而变化,我想让设计人员轻松而不需要知道jquery代码。

所以有一种方法可以在每次添加行时拉取div代码并使用渲染循环它。

<div id='id_here'>row one</div>  
<div id='id_here'>new template row, but im adding <span>created_date here</span>

那么我怎么能拉出div并相应地渲染它而不需要在var中保存div?

添加
我的意思是我从ajax获取数据并在div上生成它,但我怎么知道在div上生成json数据的位置,如果div在不同模板上不断变化。

3 个答案:

答案 0 :(得分:0)

挂钩到div的适当事件(可能是'load'),然后在回调中,或者在javascript中动态生成代码,通过ajax调用将其拉入,或者从静态文件加载它。然后只需将HTML弹出到div中。

JQuery Events doc

答案 1 :(得分:0)

如果我理解正确,你想将一些html加载到容器中,对吗?

如何将模板html代码存储在html文件中,然后将其加载到要插入的位置:

$(function(){
$('#container').load('path/to/mytemplate.html');
});

答案 2 :(得分:0)

我不太确定我理解这个问题,你的意思是:

//load contents of myDiv from remote server and inject it into myDiv (url,selector)
$("#myDiv").load("/blah.php?p=3 #myDiv");

//load contents of hizzay.php?p=2 from remote server and inject it into anotherDiv
$("#anotherDiv").load("/hizzay.php?p=2");    

<div id="myDiv">output from blah.php?p=3</div>
<div id="anotherDiv">output from hizzay.php?p=2</div>

你在'var中保存div'是什么意思?

请参阅http://docs.jquery.com/Ajax/load

编辑:我想我得到了(未经测试):

function getPage(pageNo)
{
    $("#someDIv").load("/hizzay.php?p=" + pageNo);
    return false;//just in case   
}

$('a.page').click(function(e) {
    e.preventDefault();//stop the link from being followed
    getPage($(this).text());
});

The function getPage gets its argument from the text of the generated links:

<div id="someDiv">output from hizzay.php?p=...</div>
<a class="page" href="#">1</a>&nbsp;<a class="page" href="#">2</a> ...