私はフォーラムで投票機能に取り組んでいます。投稿の回答をループしていますが、すべての回答には一意の ID があります。すべての「回答」には、テキスト、日付、その他のデータが含まれています。
また、ユーザーがクリックして投票する画像をクラスとともに追加しました。
<asp:Image runat="server" ImageUrl="~/Resources/Images/UpVoteImg.png" CssClass="upvote"/>
私のスクリプトでは、クラスですべてのクリック イベントをキャッチしますupvote
。
<script>
$('.upvote').click(function () {
var url = '<%= ResolveUrl("~/services/forumservice.asmx/voteup") %>';
var userId = <%=SystemContext.Instance.SystemUser.UserId %>;
var data = '{"entry":"' + 'HOW_DO_I_GET_YOU?' + '", "userid":"' + userId + '"}';
$.ajax({
type: "POST",
url: url,
contentType: "application/json; charset=utf-8",
data: data,
success: function () {
alert('Thanks');
},
error: function () {
}
});
});
</script>
私の問題:この画像をクリックすると、回答のIDでWebサービスを呼び出したいです。
私が試したこと/考えたこと:
- 画像に何らかのデータ属性が追加された場合、 thisキーワードはここに行く方法だと確信しています。私は例を見つけることができませんでした(おそらく間違った検索語)
- プライベートフィールドを設定する画像に onclick() を作成し、クリックイベントを読み取ります (はい、それを避けたいです)