0

有谁知道为什么按下只读输入框上的退格键时 jQuery 对话框会关闭?

当在只读文本框上按下其他键时,还有其他问题,比如空格键。因此,我的假设是它与只读输入框有关。

我需要将此输入设为只读,以便用户无法更改该值。我无法将其禁用,因为我的控制器无法接收禁用控件的值。

我在 ASP.NET MVC3 中工作。

请帮忙。谢谢

更新

我在对话框打开时按退格键,它会关闭对话框。区别在于添加对话框我必须按两次退格键。对于编辑,它会在按一次退格键时关闭。

这就是我在两个链接上打开对话框的方式 - 添加和编辑

$('#add').click(function () {
            $('#popup-form-dialog').load('@Url.Action("Add", "Home")', function (html)
                    { $('#dialog').html(html); });
            $('#dialog').dialog('option', 'title', 'Add');
            $('#dialog').parent().css({ position: "fixed" }).end().dialog('open');
        });

        $('#edit a').live('click', function () {
            var id = $(this).attr('id');
            $('#dialog').load('@Url.Action("Edit","Home")/' + id, function (html)
                    { $('#dialog').html(html); });
            $('#dialog').dialog('option', 'title', 'Edit');
            $('#dialog').parent().css({position:"fixed"}).end().dialog('open');
            return false;
        });

$('#dialog').dialog({
            bgiframe: true,
            autoOpen: false,
            resizable: false,
            width: 500,
            modal: true,
            close: function () {
               //make changes to the parent page
            }

    });

更新

注意 - 对话框上的退格实际上是浏览器的退格。我想知道为什么当我有模态对话框时会发生这种情况?以及如何阻止这种情况?有什么想法吗?

4

1 回答 1

0

您可以尝试以下选项:

1.) 通过添加禁用输入文本框disabled="true"

2.) 当有人试图将光标移到只读文本框中时,将光标移出。

onfocus = "this.blur()"

3.) 使用标签而不是只读文本框。

于 2012-10-12T14:16:37.667 回答