【发布时间】:2009-04-20 18:28:26
【问题描述】:
我的 jquery 代码被 asp.net mvc 页面上的可重复部分视图重用,但脚本没有按我预期的那样执行。
场景并没有那么复杂,我有一个包含多个评论的页面,并且允许登录的用户通过竖起大拇指/大拇指向下按钮“投赞成票”或“投反对票”(类似于 digg)。
我将每个场景的文本呈现在 <span> 中,其中 id='spanname-'+reviewId 因此每个评论的评级都是唯一可识别的(因为它们是可重复的,因为页面上存在多个评论,每个评论具有相同的功能)所以例如如果我想要求用户当前未登录,我有以下 html
<span id="login-<%=Model.EntityId%>" style="margin: 0 5px 0 5px;display:none;">
Why not <a href="#">login</a> and rate this?
</span>
并适当设置一个initialise()方法
var isAuthenticated = <%=Request.IsAuthenticated.ToString().ToLower() %>;
function initialise()
{
if (isAuthenticated)
{//hide login spans, unhide other spans}
else
{
//alert('user not logged in')
$('rate-<%=Model.EntityId%>').hide();
$('login-<%=((GigItModel)Model).EntityId%>').show();
//alert($('login-<%=((GigItModel)Model).EntityId%>'));
}
}
$().ready(function()
{
initialise();
});
我已经设置了警报按钮来测试它是否检测到登录用户与未登录用户,并且它正在引用对象,但由于某种原因,页面没有呈现 CSS 属性并且显示 NONE <span> 的(或者如果我删除了 style 属性中的 display:none 则全部)
谁能提供关于为什么 jquery 没有按预期执行的见解? 提前致谢。
【问题讨论】:
标签: jquery asp.net-mvc css