我正在尝试使用sql检查来验证文本输入。根据ajax调用的结果,我想将输出返回为红色或绿色。
HTML:
<script>
$("#cdsid").click(function() {
debugger;
var value = $.trim($("#svcdsid").val());
if (value != '') {
$.ajax({
type:"POST",
url:"SVCDS_filter.cfc?method=SVCDSIDExists",
data: "value",
cache:false,
dataType: "json",
success: function(){
alert('YES');
},
error: function(){
alert('NO');
}
});
} else {
$("#targetDiv").html("Please Enter SSID");}
});
</script>
我得到&#34;意外的输入结束&#34;。在调试器中,在检查该值不是空值后,它会跳到结束代码。我不知道为什么。
答案 0 :(得分:0)
首先,您可以编写一个用于检查文本输入的ajax函数。在ajax函数中,您可以传递通过数据输入的文本值。您调用输入文本数据的url cfc函数,该方法是cfc函数的名称。这是&#34; SVCDSIDExists&#34;。在cfc文件中,您可以添加检查文本值的新函数。 access =&#34; remote&#34;为了ajax。 您可以在该表中查看该字段。如果它有记录则返回1,否则返回0.这个值可以从ajax中的成功数据中获得。根据此值,您可以更改输入框的颜色。
<script>
$("#cdsid").click(function() {
var value = $.trim($("#svcdsid").val());
if ($.trim(value).length != 0) {
$.ajax({
type:"POST",
url:"SVCDS_filter.cfc?method=SVCDSIDExists",
data: {
value : value
},
cache:false,
async : false,
success: function(data){
if(data = 1){
alert('YES');
$("#targetDiv").css('border',"1px solid green")
} else {
alert('NO');
$("#targetDiv").css('border',"1px solid red");
}
}
});
} else {
$("#targetDiv").html("Please Enter SSID");
}
});
</script>
&#13;
<cffunction name="SVCDSIDExists" returntype="any" access="remote" returnformat="plain" >
<cfargument name="value" type="string" default="" required="yes">
<cfset variables.returnVal = 0>
<cfquery name="qGetSVCDSIDExists" result="result" datasource="#Application.ds#" username="#Application.UserName#" password="#Application.Password#">
select columnname
from your_table
where 1 = 1
<cfif StructKeyExists(arguments,"value")>
and columnname = <cfqueryparam cfsqltype="cf_sql_varchar" value="#arguments.value#">
</cfif>
</cfquery>
<cfif qGetSVCDSIDExists.recordCount >
<cfset variables.returnVal = 1 >
</cfif>
<cfreturn variables.returnVal>
</cffunction>
&#13;