Javascript 从JQuery UI弹出窗口获取数据返回表单

Javascript 从JQuery UI弹出窗口获取数据返回表单,javascript,jquery,asp.net,popup,Javascript,Jquery,Asp.net,Popup,我有一个表单,当满足某些条件时,它将调用jQueryUI弹出窗口。我需要做的是,当按下OK按钮时,将弹出窗口的文本框中的内容写入表单上的隐藏文本框。这可能吗?看起来我只需要稍微调整一下弹出窗口: <script type="text/javascript"> //Total out of range dialog $(function () { $("#dialog2").dialog({ modal: true,

我有一个表单,当满足某些条件时,它将调用jQueryUI弹出窗口。我需要做的是,当按下OK按钮时,将弹出窗口的文本框中的内容写入表单上的隐藏文本框。这可能吗?看起来我只需要稍微调整一下弹出窗口:

<script type="text/javascript">
    //Total out of range dialog
    $(function () {
        $("#dialog2").dialog({
            modal: true,
            autoOpen: false,
            width: 570,
            buttons: {
                "Ok": function () {
                    //I would think I just need a little code here which
                    // writes the value inside the textbox to the hidden
                    // textbox on the form?
                    $(this).dialog("close");
                }
            }

        });
    });
</script>

//总超出范围对话框
$(函数(){
$(“#dialog2”).dialog({
莫代尔:是的,
自动打开:错误,
宽度:570,
按钮:{
“Ok”:函数(){
//我想我只需要一点代码
//将文本框内的值写入隐藏的
//表格上的文本框?
$(此).dialog(“关闭”);
}
}
});
});
然后我的弹出窗口如下所示:

<div id="dialog2" title="ATTENTION">
    <table style="width:565px; border-spacing:0px; border-collapse:collapse;">
        <tr>
            <td style="width: 240px">
                <asp:Label ID="lblCommentBox" runat="server" Text="Comment:"></asp:Label>
                <asp:TextBox ID="txtCommentBox" runat="server" CssClass="textbox" 
                             TextMode="multiline" Wrap="True" Height="70px" Width="420px" 
                             Font-Size="Small"></asp:TextBox>
            </td>
        </tr>
    </table>
</div>
<input type="hidden" id="hfComment" />
<asp:HiddenField ID="hfComment" runat="server"></asp:HiddenField>

假设您有这样一个隐藏字段:

<div id="dialog2" title="ATTENTION">
    <table style="width:565px; border-spacing:0px; border-collapse:collapse;">
        <tr>
            <td style="width: 240px">
                <asp:Label ID="lblCommentBox" runat="server" Text="Comment:"></asp:Label>
                <asp:TextBox ID="txtCommentBox" runat="server" CssClass="textbox" 
                             TextMode="multiline" Wrap="True" Height="70px" Width="420px" 
                             Font-Size="Small"></asp:TextBox>
            </td>
        </tr>
    </table>
</div>
<input type="hidden" id="hfComment" />
<asp:HiddenField ID="hfComment" runat="server"></asp:HiddenField>

PS

有时,ASP.NET会更改
ClientID
,生成的HTML ID与您创建的.aspx ID不匹配。如果是这样的话,那么最好使用一些CSS类

例如:

<!-- Inside your pop-up (etc) -->
<asp:TextBox ID="txtCommentBox" runat="server" CssClass="textbox txt-comment-box" 
                         TextMode="multiline" Wrap="True" Height="70px" Width="420px" 
                         Font-Size="Small"></asp:TextBox>

<!-- And then, your hidden field -->
<asp:HiddenField ID="hfComment" CssClass="hf-comment" runat="server"></asp:HiddenField>