你可以尝试像下面如下所示
[WebMethod]
public static string UpdateDB(string like, string dislike)
{
//Add your stuff
}
<script type="text/javascript">
$(function() {
$('#btnSubmit').click(function() {
var like = $('#Like').val();
var dislike = $('#Dislike').val();
if (name != '' && email != '') {
$.ajax
({
type: 'POST',
url: 'Home.aspx/UpdateDB', //UpdateDB is declared as WebMethod
async: false,
data: "{'like':'" + like + "','dislike':'" + dislike + "'}",
contentType: 'application/json; charset =utf-8',
success: function (data) {
var obj = data.d;
if (obj == 'true') {
$('#Like').val('');
$('#Dislike').val('');
alert("Data Saved Successfully");
}
},
error: function (result) {
alert("Error Occured, Try Again");
}
});
}
})
});
</script>
WEBMETHOD去看一下更详细信息,在这里Call WebMethod from jquery in ASP.NET
这样做“通过使用jquery的ajax”不会“阻止用户在同一个pag上多次投票E”。他们可以手动触发发送ajax请求的JS或直接点击URL。您应该验证他们在服务器端之前没有投票。 – Spycho
im试图做的是使用ajax来防止刷新页面重新提交,同时在触发JS时禁用对象onclick事件。 – Jay