【发布时间】:2020-11-23 20:55:21
【问题描述】:
我正在使用 JQuery 和 AJAX 以及 ColdFusion。我在 URL http://mysitedomain.com/something/page.cfm?x=229 中有一些值我希望 x 的这个值作为我的 ColdFusion 函数的参数。
谁能告诉我如何使用 AJAX 或任何其他方式将 URL 中 x 的值作为参数传递给我的 ColdFusion 函数?
我不知道它是如何工作的,但我仍然尝试这样做: AJAX 代码:
$.ajax({
type: "GET",
url: 'SomePathTocfc?method=getsomething&x='+x,
async: true,
success: function(result){
document.getElementById('abc').value = "My Text Input";
}
});
ColdFusion 功能:
<cffunction name="getsomething" access="remote" output="true">
<cfargument name="x" type="string" required="true">
<cfquery name="getReq" datasource="#application.dbsrc#" result =result>
Select * from TableName
Where
<cfif isDefined("arguments.x") >
x = #arguments.x#
</cfif>
</cfquery>
</cffunction>
【问题讨论】:
-
您发布了两种调用 ColdFusion 页面的不同方法。首先到带有 URL
http://mysitedomain.com/something/page.cfm?x=229参数的 CFM 页面。在您的 CFM 页面中,您会将该参数引用为url.x。第二个示例是从 JavaScript 调用 CFC。你在这里给我的东西在我看来没问题。我认为这应该有效。你得到什么错误?顺便说一句,永远不要相信输入参数并将它们直接放在您的查询中,例如x = #arguments.x#。您需要先清理该值。始终使用queryparam。 -
顺便说一句,你的函数不会返回任何东西
-
@JamesAMohler 是的。我将在那里添加一个返回语句,但目前我正面临 arg x 的问题。
-
@Miguel-F 感谢您的回复。我收到一个错误,说 x 未定义。在我的 page.cfm 页面中,我正在执行
这是正确的吗? -
现在我得到“未定义”作为函数的返回值,你猜为什么?
标签: javascript jquery coldfusion coldfusion-10 jquery-ajax