2013-08-16 35 views
-3

我正试图向数据库插入一些数据。使用javascript但现在好像一切都搞砸了。怎么能解决这个代码带有Javascript的数据库插入

<script type="text/javascript"> 
//veritabanına ürün ekleme yapacağımız fonksiyon 
//onreadystatechange ile durum değişikliği kontrolü yaptık. 
function add() { 
    var request; 
    try { 
     request = new XMLHttpRequest(); 
     request.open("POST", "Webform1.aspx"); 
     request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 
     request.onreadystatechange = function() { 
      if (request.readystate == 4) { 
       request.send("mail=" + document.all.Text1.value); 
      } 
     } 
    } catch (e) { 
    } 
} 
</script> 
+0

我会强烈建议您使用您的服务器端代码插入到您的数据库。 – Tricky12

+0

只是学习目的 – user2583511

+1

为什么在'readystatechange'内做'send'? – Harry

回答

1

我会建议使用jQuery做POST到服务器,因为这将消除跨浏览器的问题,您将运行与XHR(XmlHttpRequest的),像这样:

$.ajax({ 
    type: 'POST', 
    url: "Webform1.aspx", 
    data: {'mail': mailValue }, 
    cache: false, 
    success: function (data) { 
     alert(data); 
    } 
}); 

您还可以通过查询字符串,这样传递:

$.ajax({ 
    type: 'POST', 
    url: "Webform1.aspx?mail=mailValue", 
    cache: false, 
    success: function (data) { 
     alert(data); 
    } 
}); 

其次,我会荐最后在服务器上调用服务,例如:ASP.NET XML Web服务.asmx,WCF,ASP.NET Web API或ASP.NET AJAX页面方法,因为它会为您提供您需要的用于JavaScript的端点与服务器通信,但不是整个ASP.NET页面的整个开销。