Просто ми е любопитно, защо трябва да са текстови полета от страна на сървъра?
Тяхната json заявка за резултат може да се справи с почти всяка заявка, която можете да хвърлите към нея. Просто свържете вашите текстови полета в заявка за търсене, разделена със запетаи.
function callSearchService(credentials) {
var searchString =document.getElementById('txtStreetNum').value + ' ' + document.getElementById('txtQueryStr').value + ' , ' + document.getElementById('txtQueryCity').value + ' , ' + document.getElementById('txtQueryState').value + ' , ' + document.getElementById('txtQueryPostal').value;
var geocodeRequest = "http://dev.virtualearth.net/REST/v1/Locations?query=" + encodeURI(searchString) + "&output=json&jsonp=searchServiceCallback&key=" + credentials;
}
Ако по някаква причина наистина трябва да получите текста от текстов контрол на asp.net (може би искате да го заредите предварително за потребител), можете да го направите по следния начин;
var aspTextBoxValue = '<%=ASPTextBox.Text%>';
За да добавите различни бутони за различни полета за заявки, ще трябва да направите няколко неща:
- Свържете отделни searchStrings за всяка заявка (
callSearchService
за всяка заявка)
- Направете geocodeRequests за всяка заявка.
- Анализирайте всеки резултатен обект и покажете щифта, както се вижда в
searchServiceCallback
в следния пример:
(Вашият пример всъщност изобщо не прилича на анализ на заявка / отговор, ето още един подходящ)
Заявка и отговор в Bing Maps
Не очаквайте моят синтаксис да е перфектен, въпреки че може да е без грешки, аз просто ви изкарвам от правилния крак, без да го правя вместо вас. :)
person
clamchoda
schedule
24.09.2012