1

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

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

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

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

$('#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;

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

4

2 回答 2

4

我相信 jQuery 对话框会获取您的 HTML 的一部分,将其包装在对话框容器中并将其附加到 body 元素,这意味着您的输入元素不再在您的表单中,这就是它们不被传输的原因……只有正在提交的表单中的输入元素被发送回对服务器来说,表单之外的其他输入元素(包括其他表单)都没有。

于 2012-11-19T21:40:26.983 回答
1

这是您的问题的解决方案: jQuery 对话框表单提交不是 POSTing 值

于 2012-11-20T09:44:03.600 回答