Microsoft和JQuery:结合链接和模板的代码?

时间:2010-10-25 01:23:38

标签: jquery templates linker

有了极大的SO用户帮助,我使用ASP.NET MVC 2 Futures来使用JSON来加载600个产品,并使用下面的代码在400ms内使用Microsoft Jquery模板显示它们。

有没有办法使用Microsoft JQuery Linking将对象绑定到生成的表单数据而不循环遍历每个? (假设我在匿名函数之外保留“j”对象)

我想我应该删除ID和唯一名称,只是让它们成为属性名称(并使用类)。你能做一些带有.link的JQuery选择器,选择倍数并将链接方法应用于所有人吗?

// adDate and printProduct are grouping keys to extract a set from the Product List
function onClickGetProducts()
{   var adDateValue = $('#adDates option:selected').val();
    var printProductValue = $('#printProducts option:selected').val();
    var responseObject = {};
    responseObject.adDate = adDateValue;
    responseObject.printProduct = printProductValue;
    var jsonResult = JSON.stringify(responseObject);
    $.ajax({ type: "POST",
             url: "/GetProducts",
             data: jsonResult,
             contentType: "application/json; charset=utf-8",
             dataType: "json",
             success: function (j) {
                    // TODO: do something with products
                    $('#Products').html('');
                    $('#productTemplate').tmpl(j).appendTo("#Products");
             }
    });
}

模板代码:

<script id="productTemplate" type="text/x-jquery-tmpl">
    <div style="position:relative;float:left;background-color:White;:400px;height:250px;overflow:scroll;">
        <b>#${upc}</b><br />
        ----<br />
        Main Product Text:<br/>
        <input type="text" value="${maintext}" name="product${h_adv_nbr}" /><br />
        Description Text:<br/>
        <input type="text" value="${desctext}" name="product${h_adv_nbr}" /><br />
        Photo:<br/>
        <input type="text" value="${photo}" name="product${h_adv_nbr}" /><br />
    </div>
</script>

1 个答案:

答案 0 :(得分:1)

您需要更改控制器方法才能执行此操作。

/GetProducts/{page_index}/{page_size}

你可以通过诉诸

之类的东西来做到这一点
IQueryable<Products>.Skip(page_index*page_size).Take(page_size);

或者您可以在数据库中预先定义分页存储过程,然后通过L2S或EF4调用它