好了,所以这是我的史诗般的旅程的问题,现在一个月怎么回事...:通过jQuery的/ Ajax的选择框使用ColdFusion
第一个问题:我是建设一个形式的ColdFusion的Ajax标签这是有史以来最严重的错误。 IE完全讨厌它,我无法绑定任何东西。是的,我的代码是正确的。我有很多人和许多论坛验证过它。所以我没有想法什么是错的。
所以coldfusion ajax标签是不存在的问题..他们不会与我的服务器设置...我不知道。 (我不控制我的服务器我工作)
所以......现在,我是SOL,在我的办公室里哭,像一个疯狂的人...我现在决定通过使用jQuery解决问题+ Coldfusion。
它不工作要么...
这是新的问题: 我需要有一个选择框,被预先填入设置会话变量。换句话说:
我想表单变量传递给将设置会话变量等于表单变量的网页...
注:我使用的是CF 8
这里是到目前为止我的代码:
形式:
<form>
<select name="DeptCode" id = "dept">
<option value="NONE" selected>Choose a Department
<cfoutput query="getDepartments">
<option value="#DeptCode#">#DeptName#</option>
</cfoutput>
</select>
</form>
<cfoutput> #session.DeptCode#</cfoutput>
的jQuery/AJAX:
<script language = "javascript">
$('#dept').change(
function() {
var datas = $('#dept').val();
$.ajax({
url: 'url:catch.cfc?method=getDept',
data: {dept: datas}
success: function(datas) { alert(datas); }
});
});
</script>
catch.cfc
<cfcomponent output="false">
<cffunction name="setDept" access="remote" returntype="any">
<cfargument name="dept" type="any" required="yes">
<cfset session.DeptCode = #argument.dept#>
<cfreturn />
</cffunction>
</cfcomponent>
理论上,cookie中的CFID和CFSESSIONID将被发送,那么你的catch.cfc应该能够设置session.DeptCode。那么有什么不起作用?在catch.setDept()中尝试一些日志记录,看看你是否可以调试它。 – Henry 2010-07-08 18:59:50
它没有做任何事情。 :(这是阿贾克斯的东西,不工作,它不会传递变量,所以我会选择一个选择框,但它不会改变变量。 Firebug没有选择任何东西。 – Bri 2010-07-08 19:08:01
我觉得我的jQuery脚本有问题..我不知道现在想搞清楚它..火球没有帮助一点。它什么也没有。 – Bri 2010-07-08 19:16:30