C# 中继器中的jQuery
我对jQuery的世界非常陌生,可能会在这里问一个相当简单的问题。我很好奇社区认为什么是具有jQuery功能的数据绑定对象的最佳实践C# 中继器中的jQuery,c#,jquery,dynamic-data,C#,Jquery,Dynamic Data,我对jQuery的世界非常陌生,可能会在这里问一个相当简单的问题。我很好奇社区认为什么是具有jQuery功能的数据绑定对象的最佳实践 作为一个具体的例子,我目前创建了一个绑定到对象列表的中继器。每个对象都有属性,如“链接”、“缩略图”、“子文本”等。这是一个小型的重复列表(我假设此列表包含一些有关某些项目的基本详细信息,当您单击其中一个时,您会看到有关该特定项目的更多数据 我肯定会根据呈现页面的大小差异选择一个(动态jQuery)或两个(JSON服务)。如果我们谈论的是10kb附近的差异,我会选
作为一个具体的例子,我目前创建了一个绑定到对象列表的中继器。每个对象都有属性,如“链接”、“缩略图”、“子文本”等。这是一个小型的重复列表(我假设此列表包含一些有关某些项目的基本详细信息,当您单击其中一个时,您会看到有关该特定项目的更多数据 我肯定会根据呈现页面的大小差异选择一个(动态jQuery)或两个(JSON服务)。如果我们谈论的是10kb附近的差异,我会选择动态jQuery,只需准备好所有数据即可。如果远远超过10kb,请使用JSON服务
额外的DB请求和它在用户期望时所暗示的延迟没有什么问题。如果有人单击网页项目,他们会很好,任何延迟都不会超过半秒,如果你愿意说“请稍候”,可能会超过一秒表示明显的延迟是正常的。我假设此列表包含一些关于某些项目的基本详细信息,当您单击其中一项时,您会看到有关该特定项目的更多数据 我肯定会根据呈现页面的大小差异选择一个(动态jQuery)或两个(JSON服务)。如果我们谈论的是10kb附近的差异,我会选择动态jQuery,只需准备好所有数据即可。如果远远超过10kb,请使用JSON服务
额外的DB请求和它在用户期望时所暗示的延迟没有什么问题。如果有人单击网页项目,他们会很好,任何延迟都不会超过半秒,如果你愿意说“请稍候”,可能会超过一秒发出明显延迟的信号是正常的。从C#codebehind动态创建必要的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选项的权重更高一些。尤其是如果用户可能返回到以前点击的链接
这有意义吗?很高兴进一步阐述…从C#codebehind动态创建必要的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选项的权重更高一些。尤其是如果用户可能返回到以前点击的链接
这有意义吗?很高兴进一步阐述…这对点击事件来说是有意义和优雅的。只有一小部分信息被加载到页面中,所以我不会对在初始加载时一次加载所有信息感到失望。我确实有一个问题,那就是附加到每个对象上的附加数据(即“潜文本”)。在itemdatabound事件中,item.Subtext很容易获得,但我不确定如何附加这些附加信息。这似乎是最好的选择,我正在添加一个新问题来解决自定义属性块。我非常喜欢不必生成Javascript(或为此生成的任何代码)嗨,亚历克西斯。谢谢你的提示:)。对于潜文本问题,我会将其输出为隐藏字段或HTML元素,我将其样式设置为隐藏。然后创建一个选择器,在需要时可以找到它。可能与之前类似,var subText=$('input#subTextID'+id',#repeater id').val();这很有意义,对于点击事件来说也很优雅。只有一小部分信息被加载到页面中,所以我并不担心在初始加载时一次加载所有信息。我的一个问题是附加在每个对象上的附加数据(即“潜文本”)。在itemdatabound事件中,item.Subtext很容易获得,但我不确定如何附加这些附加信息。这似乎是最好的选择,我正在添加一个新问题来处理自定义属性块。我是Javascript的忠实粉丝,不必生成Javascript(或为此生成的任何代码)。谢谢你的提示:)。对于潜文本问题,我会将其输出为隐藏字段或HTML元素,我将其样式设置为隐藏。然后创建一个选择器,在需要时可以找到它。可能与之前类似,var subText=$('input#subTextID'+id',#repeater id').val();