如何使用asp.net c#.it从后端访问进度标记的value属性无法正常工作。我需要根据5星和div中的4星显示用户百分比
<div class="stars">
<span>5 star</span>
<div class="bar">
<div class="progress"><asp:Label ID="5star" Text='<%#Eval("5star") %>'></asp:Label></div>
</div>
</a>
<a>
<span>4 star</span>
<div class="bar">
<div class="progress"><asp:Label ID="4star" Text='<%#Eval("4star") %>'></asp:Label></div>
</div>
</a>
</div>
css代码:
.bar{
background-color: #f2f2f2;
width: 126px;
display: inline-block;
border: 1px solid #f2f2f2;
height: 12px;
margin-left: 10px;
position: relative;
}
.progress{
line-height: 16px;
height: 15px;
background-color: #eed44b;
border: 1px solid #eed44b;
padding-left: 5px;
}
答案 0 :(得分:1)
<a>
标记没有起始标记。runat=server
。<div>
标记有一个名为progress的类。所以我相信你需要所有有类设置才能进展的div。您可以在某些点击事件代码中使用,例如
ShowUsersRatings.InnerHtml = star4.Text;
我已经更正了一些ASP.NET标记。请在下面找到更正
<div class="stars">
<a> <!-- added -->
<span>5 star</span>
<div class="bar">
<div runat="server" id="dv1" class="progress"><asp:Label ID="star5" Text='<%#Eval("star5") %>' runat="server"></asp:Label></div>
</div>
</a>
<a>
<span>4 star</span>
<div class="bar">
<div class="progress" id="dv2" runat="server"><asp:Label ID="star4" Text='<%#Eval("star4") %>' runat="server"></asp:Label></div>
</div>
</a>
</div>
<label id="ShowUsersRatings" runat="server" ></label>
在服务器端C#/ VB上,您需要获得所有<div>
个具有class =&#34; progress&#34;的元素。然后你需要findControl
标签类型。这将为您提供准确的价值。
答案 1 :(得分:0)
为了访问代码隐藏中的HTML元素,您可以添加runat =&#34; server&#34;归属于他们,如:
<div class="progress" runat="server">
答案 2 :(得分:0)
如果您正在寻找一个jquery解决方案。我建议你去JQuery Ratings plugin寻找这个解决方案 https://github.com/mre/jquery.ratingbar/blob/master/example_animation.html
我希望在JQuery中给你一个例子。