javascript - 从 JQuery UI Popup 获取数据返回到表单

标签 javascript jquery asp.net popup

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

<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>

然后我的弹出窗口看起来像这样:

<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.NET HiddenField:

<asp:HiddenField ID="hfComment" runat="server"></asp:HiddenField>

那么你是对的,你可以把代码放在你认为应该放的地方:

$("#hfComment").val($("#txtCommentBox").val());

附言

有时,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>

那么你的代码会是这样的:

$(".hf-comment").val($(".txt-comment-box").val());

关于javascript - 从 JQuery UI Popup 获取数据返回到表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32589257/

相关文章:

JavaScript Base 64 解码二进制数据不起作用

javascript - 使用 '-' 字符分割太长的单词

javascript - HTML/Javascript - 将文本区域的高度与另一个文本区域的高度相关联?

javascript - 使用jquery计算从div中心到屏幕中心的直接(对 Angular 线)距离

JavaScript 在 Internet Explorer 中不工作

javascript - Web - 使用 LocalStorage API 和 jQuery 删除选定的列表项

Jquery Ajax 调用 CFC 不起作用

c# - 如何通过 Web API 向所有客户端广播消息

asp.net - 数据库关系查询

c# - asp.net core 2.0区分过期session和新用户