[英]How to convert JavaScript variable to JSON object and insert that JSON object into Mysql using VB.Net
[英]How to insert JSON object into Mysql database through javascript variable using VB.Net
我想通过javascript变量将文本框值转换为json对象,转换后需要使用VB.Net代码将JSON对象插入MySQL数据库。 我的代码如下:
客户端 :
<script type = "text/javascript" >
$(function () {
$('#btnSubmit').click(function () {
var Name = $('#txtName').val();
var Username = $('#txtUsername').val();
var Password = $('#txtPassword').val();
if (Name != '' && Username != '' && Password != '') {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Default.aspx/InsertData",
data: '{Name: ' + Name + ',Username:' + Username + ',Password:' + Password + '}',
dataType: "json",
success: function (data) {
var obj = data.d;
if (obj == 'true') {
$('#txtName').val('');
$('#txtUsername').val('');
$('#txtPassword').val('');
$('#lblmsg').html("Details Submitted Successfully");
window.location.reload();
}
},
error: function (result) {
alert("Error");
}
});
}
else {
alert('Please enter all the fields')
return false;
}
})
});
</script>
服务器端 :
<WebMethod()> _
Public Shared Function InsertData(ByVal Name As String, ByVal UserName As String, ByVal Password As String) As String
Dim msg As String = String.Empty
Dim MySqlConn As MySqlConnection
Dim query As String
Dim dbcomm As MySqlCommand
Dim reader As MySqlDataReader
MySqlConn = New MySqlConnection
MySqlConn.ConnectionString = "server=192.168.1.53;charset=utf8;userid=root;password=password;allow user variables=true;database=information"
MySqlConn.Open()
query = "insert into information.userDetails(Name,Username,Password) VALUES(@Name,@Username,@Password)"
dbcomm = New MySqlCommand(query, MySqlConn)
reader = dbcomm.ExecuteReader
Dim i As Integer = dbcomm.ExecuteNonQuery()
If i = 1 Then
msg = "true"
Else
msg = "false"
End If
Return msg
MySqlConn.Close()
End Function
但是我的json数据总是通过错误函数。 它不进入成功函数,而总是调用错误函数。 请让我知道该怎么办?? 提前致谢。
您可以使用JSON.stringify
正确发送json data
。
手动添加quotes and braces
需要proper formatting
因此,即使您错过了单引号,也会发生错误。
var data = JSON.stringify({Name: Name ,Username: Username ,Password:Password});
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "Default.aspx/InsertData",
data: data,
dataType: "json",
success: function (data) {
var obj = data.d;
if (obj == 'true') {
$('#txtName').val('');
$('#txtUsername').val('');
$('#txtPassword').val('');
$('#lblmsg').html("Details Submitted Successfully");
window.location.reload();
}
},
error: function (result) {
alert("Error");
}
});
我使用了所有jquery版本,但我的Jquery函数无法正常工作,并显示错误消息,因为“已弃用getPreventDefault()。请改用defaultPrevented。” 再来再来。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.