【问题标题】:jQuery modal message with text input带有文本输入的 jQuery 模态消息
【发布时间】:2015-02-10 17:00:27
【问题描述】:

我正在尝试通过添加 asp:Textbox 来编辑 jQuery 模式消息框。 用户点击Button1后,出现对话框,提示用户输入一个QtyRun(double)。最后他们按下 Enter。

如何将对话框中的用户输入传递给 aspx 表单上的变量或 aspx 控件(如标签)?

这是我的脚本和 aspx 代码:

<script> $(function() {
$('#Button1').click(function() {
    $("#dialog-message").dialog({
     modal: true,
     buttons: {
     Enter: function () {
        $('<%= Label1.Text %>').val($('<%= qtyRunText.Text %>').val());
                $(this).dialog("close");
        }}});
    })
});

<form id="form1" runat="server">
    <asp:Button ID="Button1" runat="server" Text="Button" />
    <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<div id="dialog-message" title="Roll# Found!" style="display:none">
<p>
Enter QtyRun: <asp:TextBox ID="qtyRunText" runat="server"></asp:TextBox>
</p>
</div>
</form>

【问题讨论】:

    标签: javascript c# jquery asp.net jquery-ui


    【解决方案1】:

    第一个问题是为什么您需要在服务器控制中使用这些值。

    但是,你可以这样做:

    你需要你的asp控件的ID:

    Enter: function () {
            $('#<%=Label1.ID%>').val($('#<%=qtyRunText.ID%>').val());
                    $(this).dialog("close");
            }}});
    

    如果你在服务器端设置这些ID属性会更友好:

    Label1.ID = "asp_mylabel";
    qtyRunText.ID = "asp_QtyRunText";
    

    在 javascript 中,您可以调用 $('#asp_mylabel')$('#asp_QtyRunText')

    【讨论】:

    • 感谢您的回复。用户执行几个成功的任务后,会提示他们输入一个值。我想我需要在服务器控件中使用这些值,因为我想稍后将它们传递到 sql 查询中,以便稍后更新表和 gridview。我唯一打算使用 jQueryUI 的就是消息框。如果您有更好的方法的建议,我很想知道。感谢您的回复!
    • @terbubbs 那么 .ID 属性就是您所需要的。阅读那里的最佳实践。祝你好运。
    猜你喜欢
    • 1970-01-01
    • 2018-11-19
    • 1970-01-01
    • 2019-08-28
    • 1970-01-01
    • 1970-01-01
    • 2018-11-20
    • 2015-08-16
    • 2013-06-03
    相关资源
    最近更新 更多