Ich bin sehr grün, wenn es um die Front-End-Entwicklung geht, versuche ich Daten mit Modal einfügen, habe ich zwei Textfelder, die erste ist Code und die zweite ist Name .. Ich brauche sie einzigartig sein:undefined Antwort, Ajax funktioniert nicht?
$.validator.addMethod("codeNotUsed", function (value, element) {
var response;
$.ajax({
type: "POST",
url: "Profile_ValidatieProfileCode.ashx",
data: { code: $('#txtCode').val() },
async: false,
success: function (data) {
response = eval(data);
}
});
alert(response);
return response;
}, "Code already used");
$.validator.addMethod("nameNotUsed", function (value, element) {
var response;
$.ajax({
type: "POST",
url: "Profile_ValidateProfileName.ashx",
data: { name: $('#txtName').val() },
async: false,
success: function (data) {
response = eval(data);
}
});
return response;
}, "Name already used");
der Inhalt eines der .ashx Dateien:
Imports System.Web
Imports System.Web.Services
Public Class Profile_ValidateProfileName
Implements System.Web.IHttpHandler
Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest
context.Response.ContentType = "text/plain"
Dim name = context.Request.Form("name")
Try
Dim type = DataFactory.Instance.GetProfileByName(UserIdentity.ClientConfig.ConnectionString, name)
If IsNothing(type) Then
context.Response.Write("true")
Else
context.Response.Write("false")
End If
Catch ex As Exception
context.Response.Write("false")
End Try
End Sub
ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable
Get
Return False
End Get
End Property
End Class
HTML-Code:
<form id="InputForm" name="InputForm" action="javascript:void(0);" novalidate="novalidate"><div id="InputFormContent">
<br>
<div class="row">
<div class="col-xs-12">
<div class="form-group">
<label>Code</label>
<div class="icon-addon">
<input id="txtCode" name="txtCode" class="form-control required" maxlength="10">
<i class="fa fa-edit"></i>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-xs-12">
<div class="form-group">
<label>Name</label>
<div class="icon-addon">
<input id="txtName" name="txtName" class="form-control required" maxlength="30">
<i class="fa fa-edit"></i>
</div>
</div>
</div>
</div>
</div>
Die einzigartige Validierung nicht funktioniert und ich, was die Ajax-Code ist nicht gut funktioniert, gibt der Alarm me ‚Nicht definiert‘ ..
Mögliche Duplikat [Warum ist die Variable unverändert, nachdem ich es innerhalb einer Funktion ändern? - Asynchrone Code-Referenz] (https://stackoverflow.com/questions/23667086/why-is-my-variable-unterned-after-i-modify-it-inside-of-a-function-asynchron) – Xufox