3

我正在显示<input type="text" />在 ColorBox 顶部的 ModalPopupExtender 中的简单内容。它显示正常,但用户无法在其中写入。谁能告诉我出了什么问题?

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajaxToolkit" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
<script src="Scripts/jquery.colorbox-min.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function () {
        $('#testbutton').click(function () {
            $.colorbox({ inline: true, width: "50%", open: true, href: "#messageform",
                onClosed: function () {
                    $('#messageform').hide();
                },
                onOpen: function () {
                    $('#messageform').show();
                }
            });
        });
    });
</script>
</asp:Content>


<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>

    <input id="testbutton" type="button" value="click" />

    <div id="messageform" style="display: none;">
        <asp:Button ID="open" runat="server" />
    </div>

    <ajaxToolkit:ModalPopupExtender ID="ModalPopupExtender" runat="server" BackgroundCssClass="modalBackground"
        DropShadow="true" PopupControlID="Panel1" TargetControlID="open">
    </ajaxToolkit:ModalPopupExtender>

    <div id="Panel1">
        <input type="text" name="foo" value="" />   <--- **This shows, but can't enter text**
    </div>
</asp:Content>
4

3 回答 3

3

我写信给 Colorbox 的作者,他将问题追踪到以下几行:

if (document.addEventListener) {
    document.addEventListener('focus', //trapFocus, true);
                $events.one(event_closed, function (){
                document.removeEventListener('focus', trapFocus, true);
                ;}

我评论了这些,现在它似乎工作了(虽然不知道旧的 IE 版本和其他问题)。

于 2013-05-16T15:10:08.383 回答
1

缺少名称属性。也许你可以尝试给它一个空值

<input type="text" name="foo" value="" />

onClosed 和 onOpen 有什么作用?你的CSS看起来怎么样?还是输入上方的弹出层(或覆盖层)?检查 z 索引。

于 2013-05-16T12:58:13.557 回答
0

尝试分配namevalue属性以及喜欢

<input type="text" name="myText" value="Enter Your Name">

或者,如果您想分配empty价值,请尝试

<input type="text" name=myText value="">

希望它有效。

于 2013-05-16T13:02:44.933 回答