gpt4 book ai didi

javascript - 强制 AutoCompleteExtender 下拉菜单通过 Javascript 重新显示

转载 作者:行者123 更新时间:2023-11-29 22:38:49 25 4
gpt4 key购买 nike

我有一个 AjaxControlToolkit.AutoCompleteExtender 控件附加到一个文本框和三个单选按钮。当用户选择单选按钮时,用于检索 AutoCompleteExtender 中列出的值的服务方法将更改,如下所示:

$("#radioButtonList input").click(function() {

var selectedValue = $(this).val();

if (selectedValue == 0) {
$find('autoCompleteExtender').set_serviceMethod('AutoCompleteExtenderMethod1');
}
else if (selectedValue == 1) {
$find('autoCompleteExtender').set_serviceMethod('AutoCompleteExtenderMethod2');
}
else if (selectedValue == 2) {
$find('autoCompleteExtender').set_serviceMethod('AutoCompleteExtenderMethod3');
}

$('#textbox').focus();
}

我想确保,如果用户在文本框中已经存在文本时选择单选按钮,则会显示基于新服务方法的自动完成值列表(就像用户单击单选按钮一样)按钮,然后然后在文本框中输入)。

我尝试过各种事件触发机制,例如:

var press = jQuery.Event("keypress");
press.ctrlKey = false;
press.which = 77;
$('#textbox').trigger(press);

……每一个……

$('#textbox').keydown();
$('#textbox').keypress();
$('#textbox').keyup();

甚至:

$('#textbox').get(0).value += 'm';

但似乎没有强制触发正确的事件以使自动完成列表重新显示新服务方法的结果。如何使用 Javascript 实现这一目标?

编辑:我应该注意:jQuery 事件在上述每种情况下都正确触发,它们只是不会导致自动完成列表在它们出现时重新出现。我想我还没有找到 autocompleteextender 期望强制列表出现的正确事件组合。

最佳答案

确保在 $(document).ready() 函数中绑定(bind)事件。以下工作正常

      <html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript">
</script>
<script>
$(document).ready(function(){
$("#radioButtonList input").change(function() {

var selectedValue = $(this).val();

if (selectedValue == 0) {
$find('autoCompleteExtender').set_serviceMethod('AutoCompleteExtenderMethod1');

}
else if (selectedValue == 1) {
$find('autoCompleteExtender').set_serviceMethod('AutoCompleteExtenderMethod2');

}
else if (selectedValue == 2) {
$find('autoCompleteExtender').set_serviceMethod('AutoCompleteExtenderMethod3');

}
//force click on text box
$('#textbox').click()
$('#textbox').focus();
});
//handle click event
$("#textbox").click(function(){
alert("textbox clicked")
//handle your refresh action for the textbox here
})
})

</script>
</head>
<body>
<input id="textbox" type="text" value="test">
<div id="radioButtonList">
<input type="radio" value="0">
<input type="radio" value="1">
<input type="radio" value="2">
</div>
</body>
</html>

关于javascript - 强制 AutoCompleteExtender 下拉菜单通过 Javascript 重新显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3965211/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com