您好我的HTML中的选择框出了问题。首先点击此框有时不会选择值而只是“聚焦”它? (我不知道这是一个好词) 我制作了屏幕来帮助你解释我的意思:
我该怎么做才能避免这种情况?当用户点击我必须在地图上显示正确的位置
我的代码的某些部分:
echo '<select id="selector'.$i.'" style=" height: 100%; width: 228px; margin: 2px;" onchange="JumpToPoint(this.value);">';
while($street = mysql_fetch_array($streets, MYSQL_ASSOC))
{
echo '<option value="'.$street['x'].','.$street['y'].'">'.$street['name'].'</option>';
}
echo '</select></div>';
有可能模拟这个焦点吗?因为只有第一次点击是聚焦值 - socond,第三次等总是选择正确的值
我发现问题出在这个功能上:
jQuery.fn.filterByText = function(textbox) {
return this.each(function() {
var select = this;
var options = [];
$(select).find('option').each(function() {
options.push({value: $(this).val(), text: $(this).text()});
});
$(select).data('options', options);
$(textbox).bind('change keyup', function() {
var options = $(select).empty().data('options');
var search = $.trim($(this).val());
var regex = new RegExp(search,"gi");
$.each(options, function(i) {
var option = options[i];
if(option.text.match(regex) !== null) {
$(select).append(
$('<option>').text(option.text).val(option.value)
);
}
});
});
});
};
但我不知道在哪里
提前感谢您的帮助。
答案 0 :(得分:0)
我不明白为什么你不只是为你的jQuery事件而不是'click'事件使用'change'事件,所以使用你提出的代码并假设你正在使用jQuery试试这个:
<script type="text/javascript">
$(document).ready(function() {
$('#selector<?php echo $i ?>').change(function() {
/** change map code goes here **/
});
});
</script>
答案 1 :(得分:0)
在while循环之前添加此行。我认为这有助于你。
echo'---选择----';