我是jQuery的新手,并且正在尝试创建一个登录页面,该页面将对CFC执行Ajax调用,该登录页面简单地返回true或false,表示登录是否成功。我的电话正确地使用了我的论点向CFC发出了通知,但返回的是问题。如果我在jQuery中设置我的数据类型为“html”,我会看到我的整个页面在html中的副本以及我正在寻找的“真实”值。但如果我尝试将其设置为“json”,则不会发生任何事情。我在ColdFusion 9,jQuery 1.6.2上。对ColdFusion组件的Ajax jQuery调用
我jQuery的功能:
$(function() {
$('.error').hide();
$(".button").click(function() {
// validate form here
$('.error').hide();
var name = $("input#username").val();
var pass = $("input#password").val();
if (name == "") {
$("label#username_error").show();
$("input#username").focus();
return false;
}
else if (pass == "") {
$("label#password_error").show();
$("input#password").focus();
return false;
}
else {
var bodyContent = $.ajax({
url: "cfc/Login.cfc?method=tryLogin&returnFormat=JSON",
global: false,
type: "POST",
data: {username:name,password:pass},
dataType: "json",
async:false,
success: function(msg){
alert(msg);
}
}
).responseText;
}
});
});
我CFC代码,很简单,我只是试图让这个正确回到现在:
<cfcomponent name="Login" output="false">
<cffunction name="tryLogin" access="remote" output="false">
<cfargument name="username" type="string" required="true"/>
<cfargument name="password" type="string" required="true"/>
<cfset var result = true />
<cfreturn result />
</cffunction>
</cfcomponent>
当你说“什么都没有发生”时,你是什么意思?是否提出了要求?你可以看到它在Firebug或任何其他HTTP观看util?是否回复了回复?它是空的吗? –
在Application.cfc中,是否将this.secureJSON设置为true或false?如果为true,则将其设置为false。 –