2011-08-16 113 views
1

我正在創建一個簡單的「這有用嗎?」使用是和不使用對象 - 使用ASP.net webforms。使用Ajax通過Jquery調用函數/數據庫更新

我需要通過使用jQuery的ajax來完成提交,以防止用戶在同一頁面上多次投票..目前,我有兩個方法Like_Click和Dislike_click在頁面背後的問題。

誰能給我一些指點,或者通過jQuery的簡單的Ajax任何合適的演練一個鏈接(我是新來的阿賈克斯!)

伊夫看着使用每個方法的[的WebMethod]標識符但完全不瞭解這種方法。

感謝

+0

這樣做「通過使用jquery的ajax」不會「阻止用戶在同一個pag上多次投票E」。他們可以手動觸發發送ajax請求的JS或直接點擊URL。您應該驗證他們在服務器端之前沒有投票。 – Spycho

+0

im試圖做的是使用ajax來防止刷新頁面重新提交,同時在觸發JS時禁用對象onclick事件。 – Jay

回答

0

您可能正在尋找jQuery的post function。看看例子。你會想要做的線沿線的東西:

$('.myForm').submit(function(){ //define a handler for the submit event of the form 
    $.post($(this).attr('action'), {useful: true}); //send data via ajax 
    return false; //prevents the form from submitting via a normal web request 
}); 
0

你可以嘗試像下面如下所示

[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