asp.net - 输入按钮不提交表单(仅限 IE)ASP.NET

标签 asp.net javascript internet-explorer textbox

我有一个带有文本框和按钮的表单。 IE 是唯一在按下 Enter 时不会提交表单的浏览器(适用于 FF、Opera、Safari、Chrome 等)。我发现这个 javascript 函数试图哄骗 IE 正常运行;但无济于事:

function checkEnter(e){
    var characterCode
    if (e && e.which) {
        e = e
        characterCode = e.which
    } else {
        e = event
        characterCode = e.keyCode
    }
    if (characterCode == 13) {
        document.forms[0].submit()
        return false
    } else {
        return true
    }
}

实现:

searchbox.Attributes("OnKeyUp") = "checkEnter(event)"

有什么建议吗?

编辑: This pageCodeProject概述了 Dillie 所说的内容,并且效果很好。

最佳答案

只需在页面上的隐藏 div 中创建一个文本输入。这将绕过 IE 错误。

示例分区:

    <!-- Fix for IE bug (One text input and submit, disables submit on pressing "Enter") -->
    <div style="display:none">
            <input type="text" name="hiddenText"/>
    </div>

关于asp.net - 输入按钮不提交表单(仅限 IE)ASP.NET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/270494/

相关文章:

css - Footable css 类添加逗号

.net - 批量更新强类型数据集?

javascript - 如何在 React.js 中获取另一个组件的元素?

vba - 使用 VBA 将字符串从 UserForm 传递到网站字段

asp.net - OWIN Web API Windows 服务 - Windows 身份模拟

asp.net - 错误 : The type or namespace name 'ExcelPackage' could not be found

JavaScript 替换不删除空格

JavaScript 对象字面量和数组

HTML - 防止自动填充或自动完成字段(FF、IE、iPad)

html - 使用 Internet Explorer 8 嵌套 html 表前后不需要的空间