【发布时间】:2013-10-29 20:58:50
【问题描述】:
我有一个每行包含星级评分的网格视图,当用户单击一行上的保存时,它应该使用 ajax 将评分值更新到数据库中,我正在使用来自 http://rateit.codeplex.com 的代码来实现评分。所以我需要在给定类的每一行中使用一个 div,如下所示
<asp:TemplateField HeaderText="rate" HeaderStyle-HorizontalAlign="Left">
<ItemTemplate>
<div class="rateit" id="divrate"></div>
</ItemTemplate>
</asp:TemplateField>
保存按钮就是这个
<asp:TemplateField>
<ItemTemplate>
<asp:ImageButton ID="imgSave" OnClientClick="javascript:return SaveItem(<% Eval("ID") %>, <% divrate.ClientID( %>);" runat="server" ImageUrl="~/Imgs/Yes.gif" AlternateText="Save" />
</ItemTemplate>
</asp:TemplateField>
而javascript函数是
function SaveItem(RowID,RatingControlID){
var ri = $(RatingControlID);
var value = ri.rateit('value'); //rateit is the class used in div
$.ajax({
url: 'rateit.aspx', //save function
data: { id: RowID, value: value },
type: 'POST',
success: function (data) {
$('#response').append('<li>' + data + '</li>');
},
error: function (jxhr, msg, err) {
$('#response').append('<li style="color:red">' + msg + '</li>');
}
});
});
但是在函数调用本身中它给出了错误
【问题讨论】:
标签: jquery asp.net gridview rating-system