我是jQuery世界的新手,可能会在这里提出一个相当微不足道的问题。我很好奇社区认为什么是具有jQuery功能的数据绑定对象的最佳实践。
作为一个具体的例子,我目前创建了一个绑定到对象列表的转发器。每个对象都具有诸如“链接”,“缩略图”,“子文本”等属性。这是一个小型转发器(任何时候都是<10个项目)。当用户点击“链接”时,页面的单独区域会更新以反映该对象。
到目前为止,我发现的方法包括:
我想在此场景中避免使用JSON服务的主要原因是,从数据源返回后,对象已经绑定了一次。我不确定是否有必要再使用db命令,但我对所有建议都持开放态度。
答案 0 :(得分:1)
从C#代码隐藏动态创建必要的jQuery脚本可能是必要的,因为JQuery代码不必更改。请记住,不引人注目的JS就是jQuery的主要内容。
我认为单件JS看起来像这样:
$('.link-class', '#repeater-id').click(function(){
// Get the id of the link or the target using $(this).attr('id')
// Show a page section or call a service using the the discovered ID.
});
您可以使用第一条注释来提取识别您希望显示的数据所需的数据。
第二条评论可以是Ajax调用,也可以是页面上某些其他部分的div切换。如果这个数据很大,那我就倾向于使用Ajax。否则我会把它保留在页面上,然后打开或关闭它。
如果您认为用户更倾向于点击几个链接,那么即使页面稍微重一点,我也会更加有利于非ajax选项。特别是如果用户可能返回之前点击的链接。
这有意义吗?很高兴进一步阐述......
答案 1 :(得分:0)
我认为此列表包含一些有关某些项目的基本详细信息,当您点击其中一项时,您会看到有关该特定项目的更多数据。
我肯定会选择一个(动态jQuery)或两个(JSON服务),具体取决于呈现页面的大小差异。如果我们在谈论10kb附近的差异,我会选择动态jQuery并准备好所有数据。如果它远远超过使用JSON服务。
额外的数据库请求及其在用户期望时所暗示的延迟没有任何问题。如果有人点击一个网页项目,他们会在任何延迟不到半秒的情况下处于罚款状态,如果您足够好只是说“请等待”以表示明显的延迟是正常。