asp.net - 将焦点设置在由 javascript 发起的回发上

标签 asp.net javascript

我正在使用 ASP.NET 做一些客户端 JavaScript。
我有以下 javascript 来处理 XMLHTTPRequest 回调。在某些情况下,将使用 ASP.NET 提供的 __doPostBack() 函数回发页面,如下面的代码所示。但是,我希望能够在回发发生后设置下拉列表控件的焦点。有没有办法使用 Javascript 来设置它,或者我需要以其他方式进行设置。

    function onCompanyIDSuccess(sender, e) {
       if (sender == 0)
           document.getElementById(txtCompanyIDTextBox).value = "";
       document.getElementById(txtCompanyIDHiddenField).value = sender;
       if (bAutoPostBack) {
           __doPostBack(txtCompanyIDTextBox, '');
       }
   }

最佳答案

由于您正在进行完整的回发,因此您需要使用 Page.SetFocus在服务器端获取在下一个页面加载时发出的适当的 JavaScript。

否则,在纯 AJAX 解决方案中 - document.getElementById('id').focus() 就可以解决问题。

关于asp.net - 将焦点设置在由 javascript 发起的回发上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/387233/

相关文章:

javascript - 使用 Rails 实例变量作为 JavaScript 条件

javascript - 我可以对变量调用 ".log"

asp.net - Entity Framework : Getting objects not immediately related

javascript - 在 Javascript 中评估类似路径的表达式的简单方法?

javascript - 如何仅在页面加载完成且调用另一个函数后才调用函数

javascript - Discord JS Bot 识别特定消息上的特定 react 添加和 react 删除事件

javascript - "map((respone) => respone.json())"和 "map((respone) =>{ respone.json();})"之间的区别

c# - 将制表符分隔的文件读入表中

asp.net - 从 ASP.Net PageMethod 调用访问响应 header

c# - 在 Blazor 中选择框绑定(bind)