У меня есть gridview с каждой строкой, содержащей звездный рейтинг. Когда пользователь нажимает «Сохранить» в строке, он должен обновить значение рейтинга в базе данных с помощью 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>');
}
});
});
Но в самом вызове функции выдает ошибку