16
rated 0 times
[
21]
[
5]
/ answers: 1 / hits: 27118
/ 12 Years ago, tue, october 9, 2012, 12:00:00
i am having a very frustrating problem. I have this code
which filters out my results and inputs them into a select box
var syn = <?=json_encode($syn)?>;
function filterByCity() {
var e = document.getElementById(city_filter);
var city = e.options[e.selectedIndex].value;
var selectOptions = document.getElementById('syn_list');
selectOptions.options.length = 0;
for (i = 0; i < syn.length; i++) {
if (city == syn[i]['city'] || city == 'all') {
selectOptions.options[selectOptions.options.length] = new Option(syn[i]['name'], syn[i]['id'] + ' onclick=updateTxtContent('' + syn[i]['id'] + '')');
}
}
}
as you might see i am adding a onclick listener to every select option which look great in the source code of the page itself but if i copy it into an edit i notice this
my problem is that the updateTxtContent() function is not called.
<select size=10 name=syn_list id=syn_list class=span12 dir=rtl style=text-align:right;>
<option value=13" onclick="updateTxtContent('13')>option a</option>
<option value=14" onclick="updateTxtContent('14')>option b</option>
obviously there should be a better way to do this that i am not aware of.
More From » html