按钮单击方法上的空textbox.text值

时间:2014-02-14 14:49:58

标签: c# jquery asp.net

我想知道在创建表单+一些用户控件时我做错了什么,但是在填充textbox字段和submithing jquery对话框表单后,我得到了空的“tbClientName”.text值。我找不到我的错误。

P.S当我添加像Text =“123”这样的文本属性时,我总是得到123,尽管价值要么改变,要么

除此之外,当我插入文本时,它会旁路需要验证器,因此看起来就像在某处删除了值。

在jquery代码之后看起来文本属性值丢失了,有什么建议吗?

以下是相应的代码:

uc_addClient.aspx

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="uc_addClient.ascx.cs" Inherits="gamykla.Controls.uc_addClient" %>

<script type="text/javascript">
$(document).ready(function () {
    //setup new person dialog
    $('#newClient').dialog({
        autoOpen: false,
        modal: true,
        draggable: true,
        title: "Pridėti užsakovą",
        open: function (type, data) {
            $(this).parent().appendTo();
        }
    });
});

function showDialog(id) {
    $('#' + id).dialog("open");
}

function closeDialog(id) {
    $('#' + id).dialog("close");
}
 </script>

<input id="btnOpenClientAddForm" type="button" value="Pridėti užsakovą" onclick="showDialog('newClient');" /> 
<asp:Label ID="lblStatus" runat="server"></asp:Label>
<div id='newClient'>
<asp:Label ID="lblClientName" runat="server" Text="Užsakovo pavadinimas:"></asp:Label>
<asp:TextBox ID="tbClientName" runat="server"></asp:TextBox>
<br />
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" Display="Dynamic" ForeColor="Red" ControlToValidate="tbClientName" ErrorMessage="Būtina įvesti užsakovo pavadinimą."></asp:RequiredFieldValidator>
<asp:Button ID="btnAddClient" runat="server" Text="Pridėti" UseSubmitBehavior="false" OnClick="btnAddClient_Click"/>
</div>

部分来自uc_addClient.aspx.cs

public partial class uc_addClient : System.Web.UI.UserControl
{   
    private string _clientName;
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    protected void btnAddClient_Click(object sender, EventArgs e)
    {
         _clientName = tbClientName.Text;
         if(!String.IsNullOrEmpty(NewClientName))
         {
             AddClient();
         }
    }
}

2 个答案:

答案 0 :(得分:0)

您是偶然使用母版页吗?如果是这样,您需要在页面上设置ClientIdMode="Static",以便能够以这种方式进行选择。您也可以将一个类分配给控件并以这种方式选择它们。

答案 1 :(得分:-1)

请按以下方式更改文本框声明:

 <asp:TextBox ID="tbClientName" runat="server" value="123">

</asp:TextBox>

希望这会有所帮助..