我研究的每个教程和示例都足以“偏离”我需要让它非常令人沮丧的东西。我有一个使用 Twitter Bootstrap 和 jQuery 的 Coldfusion 页面。我需要一个自动完成功能来列出学校。这应该很容易。我一点反应都没有。并且没有错误(我可以使用开发工具找到)。
经过这么多次尝试,这可能有点混乱。IE; 我不知道source: '/assets/cf/fetchColleges.cfm'
和 ajax 调用之间的区别。我认为源是本地/客户端数据源。
HTML:
<div class="row">
<div class="span9">
<input size="34" type="text" name="CollegeName" id="CollegeName" value="" />
<div id="results"></div>
</div>
</div>
jQuery:
jQuery( document ).ready(function($) {
$("#CollegeName").autocomplete({
source: '/assets/cf/fetchColleges.cfm',
minLength: 3,
select: function(event, ui) {
$('#company_id').val(ui.item.id);
// go get the company data
$.ajax({
type: 'Get',
url: '/services/GradTax.cfc?method=GetSchoolsJson&returnformat=json',
data: {searchPhrase: query.term},
dataType: 'json',
error: function(xhr, textStatus, errorThrown) {
// show error
alert(errorThrown)},
success: function(result) {
response(result);
}
});
}
});
});
氟氯化碳:
<cffunction name="GetSchoolsJson" access="remote" >
<cfargument name="QueryString" required="true" />
<cfquery name="QComp" datasource="#request.dsn_live#">
select name
from companies
WHERE School_Flag = 'True' AND [Name] LIKE '%#Request.QueryString#%' AND (Status_Flag IS NULL OR Status_Flag = 'A') AND Grad_Tax_Flag = 'True'
ORDER BY [NAME] ;
</cfquery>
<cfset var comp = structNew() />
<cfoutput query="QComp">
<cfset comp["name"] = '#qcomp.name#' />
</cfoutput>
<cfreturn comp>
</cffunction>