Asp表单输入字段无法从jQuery对话框传递信息

时间:2012-11-19 20:41:47

标签: javascript jquery asp.net html forms

我们正在尝试在jQuery对话框中创建一个注册表单,但是应该从文本框传输信息的按钮不会发送信息 - 这意味着我已经创建了c#函数,接收空白数据。我们的代码是:

这是提交信息的按钮(我们的提交按钮位于jQuery对话框div之外,它被隐藏;我们使用另一个js生成按钮作为快捷方式):

<asp:Button ID="btntwo" runat="server" style="display:none"  Text="" OnClick="registerSubmit_Click" />

这是创建我们的jQuery对话框的代码(我们有javascript函数模拟我们的asp按钮的点击):

$('#Register').dialog(dialogOpts);
$.fx.speeds._default = 500;
$(function () {
    $("#Register").dialog({
        autoOpen: false,
        buttons: {
            Ok: function () {
                $("[id*=btntwo]").click();
                $('form').append('#Register');
            }
        },
        show: "blind",
        hide: "explode"
    });

这是我们用于输入字段的代码,它们位于我们的jQuery对话框中:

<asp:TextBox ID="username_textbox" runat="server" />

这是我们的c#函数,它从输入字段中获取数据并在此之后使用此数据。

string username = username_textbox.Text;

这是我们的问题:预期的结果是用户名变量将是用户输入的内容,而是此变量只接收空白数据“”。

2 个答案:

答案 0 :(得分:4)

我相信jQuery对话框会占用你的HTML,将它包装在对话框容器中并将其附加到body元素,这意味着你的输入元素不再是你的形式,这就是为什么它们不被传输...只有表单中的输入元素被提交被发送回服务器,表单外的其他输入元素(包括其他形式)不是。

答案 1 :(得分:1)

以下是您的问题的解决方案: jQuery dialog form submission not POSTing values