asp.net - 为什么在 firefox 浏览器的文本框中按回车键会将 Page.IsPostback 值设置为 true?

标签 asp.net javascript firefox

我有一个 aspx 页面,它有一个文本框和一个提交按钮。在文本框中输入数据并点击按钮会显示一个 ListView 控件,该控件显示从数据库中检索到的数据。Listvew 具有排序、分页和编辑功能。 对于其中的每一个,相应的方法都会在服务器端触发......例如: lv_sorting lv_Edit 等 如果用户在文本框中输入数据并按下回车键,Page.IsPostback 在 IE 浏览器中返回为 false,但在 Firefox 中返回为 true(任何想法, 为什么会这样?)。

当回发为真时,相应的方法被调用。 lv_sorting 等 但是由于在 Page_Load 事件中,当回发为 false 时,我只从数据库中提取数据,因此页面在 firefox 浏览器中不显示任何数据。

我需要在 firefox 浏览器中按下回车键时在 ListView 中显示数据。 我尝试使用 DefaultButton="submitBtnId"并在文本框中按下回车键时强制调用按钮单击,但没有成功。

谢谢。

仅供引用,这是在文本框中按下回车键时调用的 javascript 代码:

 function clickButton(e, buttonid) {
            var bt = document.getElementById(buttonid);
            if (typeof bt == 'object') {
                if (navigator.appName.indexOf("Netscape") > (-1)) {
                    if (e.keyCode == 13) {
                        if (bt && typeof (bt.click) == 'undefined') {
                            bt.click = addClickFunction1(bt)
                        }
                    }
                }
                if (navigator.appName.indexOf("Microsoft Internet Explorer") > (-1)) {

                    if (event.keyCode == 13) {
                        bt.click();
                        return false;
                    }
                }
            }
        }



        function addClickFunction1(bt) {
            var result = true;
            if (bt.onclick) result = bt.onclick();
            if (typeof (result) == 'undefined' || result) {
                eval(bt.href);
            }
        }

最佳答案

当按下 enter 时,Internet Explorer 不提交按钮;其他浏览器做。这意味着在这些情况下不会触发按钮的单击事件。谢天谢地,它是 possible to set a default button在 ASP.NET 2.0 中。

一旦您让所有浏览器一致地点击按钮,您应该在按钮的点击事件触发时从数据库加载值,而不是在页面加载时。

关于asp.net - 为什么在 firefox 浏览器的文本框中按回车键会将 Page.IsPostback 值设置为 true?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1693382/

相关文章:

css - 如何设置页面跳转以在所有浏览器上工作

javascript - ASP.NET PageMethod onSuccess 函数返回一个 HTML 字符串

asp.net - 可以通过定义一个类来创建一个 ASP.NET 编辑系统吗?

c# - 仅由我的网站调用 Web Api

php - 发送长 XMLHttpRequest 后导航到另一个页面

javascript - *在* ajax更新后执行Javascript

javascript - 设置 body 的比例并具有位图匹配缩放

javascript - 使 jQuery 单击 anchor 在 Firefox 上工作

asp.net - 如何使ASP.Net MVC的tinyMCE内容作为XHTML严格?

css - 为什么 chrome 打印/预览中 div 的 100% 高度不起作用?