2009-09-24 1 views
0

данных:Как изменить текстовое поле YUI Autocomplete Value population Options?

JACKSON, MS 39212|39212 
BAINVILLE, MT 59212|59212 
CROOKSTON, NE 69212|69212 
COLUMBIA, SC 29212|29212 
SPOKANE, WA 99212|99212 

Код:

<form method="GET" target="_blank"> 
     <fieldset><legend>remote example</legend> 
     <label for="myRemoteInput">Enter a state:</label> 
     <div id="myRemoteAutoComplete"> 
       <input id="myRemoteInput" name="myRemoteInput" type="text"> 
       <div id="myRemoteContainer"></div> 
     </div> 
     </fieldset> 
     <input type="submit" /> 
    </form> 
<script type="text/javascript"> 
YAHOO.example.BasicRemote = function() { 
    var oRDS = new YAHOO.util.XHRDataSource("data.php"); 
    oRDS.responseType = YAHOO.util.XHRDataSource.TYPE_TEXT; 
    oRDS.responseSchema = { 
     recordDelim: "\n", 
     fieldDelim: "|" 
    }; 
    oRDS.maxCacheEntries = 5; 
    var oRAC = new YAHOO.widget.AutoComplete("myRemoteInput" 
     , "myRemoteContainer" 
     , oRDS 
     , {minQueryLength: 2,maxResultsDisplayed: 25, forceSelection: true}); 

    return { 
     oRDS: oRDS, 
     oRAC: oRAC 
    }; 
}(); 
</script> 

Сценарий: Я хочу, чтобы отобразить автозаполнения виджет со значениями почтового индекса города, ST, однако, форма поля myRemoteInput всегда заселяет с выбранным городом , ST zip значение.

Вопрос: Как заполнить поле формы myRemoteInput значением с помощью zipcode, когда пользователь выбирает значение City, ST zip из раскрывающегося списка автозаполнения?

ответ

1

Пользовательский элемент событияSelectEvent может быть тем, что вы ищете. Я никогда не использовал его сам, но это может быть что-то вроде

oRAC.itemSelectEvent.subscribe(onItemSelect); 

function onItemSelect(oSelf , elItem , oData) { 
    var locationData = oData[0]; 
    // Now parse location data and put only the ZIP code back into oData[0] 
} 

получил от этого How do I change YUI Autocomplete textfield Value population Options? и адаптировать его немного. Я понятия не имею, работает ли это, но вы можете начать.

Я думаю, вы знаете API, но на всякий случай: http://developer.yahoo.com/yui/docs/YAHOO.widget.AutoComplete.html.

НТН

Том

Смежные вопросы