我在下面的代碼執行搜索,它不工作。在search.cfm頁面上,唯一返回的值是我輸入到搜索字段中的值(即使我單擊了一個自動提示值,它不會回來;只有實際輸入的字母纔會返回)。如何從AJAX調用中獲取並使用通過ValueList返回的變量?
<cfform class="titleSearchForm" id="searchForm" action="search.cfm?GameID=#cfautosuggestvalue.GameID#" method="post">
<fieldset>
<cfinput type="text" class="titleSearchField" name="TitleName" onChange="form.submit()" autosuggest="cfc:gz.cfcomp.search.AutoSuggestSearch({cfautosuggestvalue})">
<input type="button" class="titleSearchButton" value=" " />
</fieldset>
</cfform>
查詢在CFC:
<cfquery name="SearchResult" datasource="myDSN">
SELECT CONCAT(titles.TitleName, ' on ', platforms.PlatformAbbreviation) AS sResult, games.GameID
FROM
games
Inner Join platforms ON games.PlatformID = platforms.PlatformID
Inner Join titles ON titles.TitleID = games.TitleID
WHERE
UCase(titleName) LIKE Ucase('#ARGUMENTS.SearchString#%')
ORDER BY
titleName ASC;
</cfquery>
兩件事情:首先,我想獲得的遊戲ID回到使得AJAX請求的頁面;我知道爲什麼它不會回來:因爲我只返回sResult
var,它不包含GameID。有沒有辦法在不顯示它的情況下返回GameID值?
第二件事:如何從返回的自動提示中獲取值?假設我想抓住GameID,或者如果我不能這樣做,那麼在我的查詢中使用「TitleName」?
我試着將它傳遞給表格:action="search.cfm?GameID=#cfautosuggestvalue.GameID#"
- 但這不起作用。我如何引用autosuggestionvalue varaibles以供使用?
謝謝
感謝雷...雖然任何想法,爲什麼形式只是在我的鍵盤輸入,而不是自動建議值?例如,如果我輸入「m」並顯示一個「金屬齒輪」,點擊會將我帶到search.cfm,但是當我轉儲#表格時#我得到「m」而不是「金屬齒輪」 - 爲什麼是那? – Mohamad 2010-03-11 15:49:39
如果綁定到onClick,它會發送'm'。如果綁定到onChange,它應該在輸入字段中發送上次更改的值。 – Henry 2010-03-11 20:22:30