Я думаю, что это плохо, потому что я видел много проблем из разных браузеров, возникающих, когда вы просто устанавливаете innerHTML элемента.
Если вы попытаетесь создать элементы, просто поместив HTML-разметку для них в некоторые элементы управления innerHTML, HTML-DOM не всегда обновляется. Это может привести к тому, что ваши значения не будут возвращены при отправке формы, или даже сделать невозможным обращение к элементам с помощью javascript.
Вместо этого вы должны сделать так, чтобы WebService возвращал данные JSON или XML с нужной вам информацией (только именем магазина). А затем используйте javascript для динамического создания и добавления параметров в раскрывающийся список.
Примерно так будет хорошо работать:
// do your AJAX call and pass back the responseText to this function (For a JSON response)
function FillDDL(text)
{
eval("var data="+text);
var ddl=document.getElementById('ddlID');
for( var i=0; i<data.items.count; i++ )
{
var option = document.createElement("option");
option.text=data.items[i];
option.value=data.items[i]; //IE wont automatically copy the text to the value
ddl.options.add(option,0); //FF will error if you dont tell it where to add the option
}
}
И если вы не знакомы с JSON, этот формат используется с кодом выше:
{items:['name','name2','name3']}
Просто верните строку, подобную приведенной выше, из вашего WebService, и все будет готово.