jQuery Autosuggest를 사용하면 사용자가 부품 번호를 입력 할 수 있고 자동 제안은 유사한 부품 목록을 표시합니다. 부품이 선택되면 부품 번호 옆의 텍스트 상자에 설명이 나타나기를 원합니다. 부품 번호와 설명이 CFC에서 되돌아 오지만 부품 설명 텍스트 상자에 부품 설명을 표시 할 수 없습니다. 내가 어떻게 할 수 있니?텍스트 상자에 값을 바인딩
jQuery로 양식 :
<form action="index.cfm?action=reports:part.test" method="post">
<fieldset>
<legend>test</legend>
<p>Start typing a part number.</p>
<p>
<label for="partnum">Part Number: </label>
<input type="text" id="partnum" name="partnum" />
<input readonly="readonly" type="text" id="partdescription" name="partdescription" />
</p>
<p>
<input type="submit" name="submit" value="Submit" />
</p>
</fieldset>
</form>
<cfsavecontent variable="datatables_definitions">
<!-- added by user.list -->
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
$(document).ready(function(){
$('#partnum').autocomplete(
{source: function(request, response) {
$.ajax({
url: "/reports/services/remote/partSuggest.cfc?method=lookUpPart&returnformat=json",
dataType: "json",
data: {
search: request.term,
maxRows: 10
},
success: function(data) {
response(data);
$('#partdescription').val(partdescription);
},
})
},
parse: function(data){
return $.map(data, function(item) {
return { data: item, value: item, result: item };
});
}
});
});
</SCRIPT>
</cfsavecontent>
<cfhtmlhead text="#datatables_definitions#" />
연합사 쿼리를 수행 : 사용자가 성공적 목록에서 부품 번호를 선택하면
<cfcomponent output="false">
<cffunction name="lookUpPart" access="remote" returntype="any" >
<cfargument name="search" type="any" required="false" default="">
<cfargument name="datasource" type="string" required="no" default="myDSN">
<!--- Define variables --->
<cfset var data="">
<cfset var result=ArrayNew(1)>
<!--- Do search --->
<cfquery name="getPart" datasource="#arguments.datasource#">
SELECT top 20 partnum, partdescription
FROM part
WHERE partnum LIKE '%#trim(arguments.search)#%'
ORDER BY partnum
</cfquery>
<!--- Build result array --->
<cfloop query="getPart">
<cfset returnStruct = StructNew() />
<cfset returnStruct["partnum"] = partnum />
<cfset returnStruct["partdescription"] = partdescription />
<cfset ArrayAppend(result,returnStruct) />
</cfloop>
<!--- And return it --->
<cfreturn serializeJSON(result) />
</cffunction>
</cfcomponent>
다시는 난에 관련된 부분에 대한 설명을 원하는 부품 번호 옆에있는 부품 설명 상자에 나타납니다.
감사합니다.
이 제안을 주셔서 감사합니다, 그러나 이것은 부품 번호를 선택한 후 partdescription 텍스트 상자에 표시 부분 설명을 받고 수행하지 않았다 . – aparker81