ASP.NET Gridview标签文本

时间:2013-04-08 05:38:49

标签: asp.net gridview label

我有一个在gridview内的标签。我需要从javascript获取标签的文本。我有一套说6个标签.3从时间(小时,分钟)和相同的To Times,所有下拉菜单。假设我已将值保存为

  1. 09-00至09-45
  2. 09-45至10-30
  3. 10-30至11-15
  4. 它们分别以FromTime和ToTime的形式显示在网格中。我的逻辑是用户不应该在这个范围内输入时间。时间下拉列表可在弹出窗口中找到。单击“保存”按钮,弹出窗口将关闭,并在网格中填充选定的值。有人可以建议我一个解决方案吗?提前谢谢。

4 个答案:

答案 0 :(得分:0)

由于label呈现为span所以您需要使用以下的javascript

document.getElementById('<%= lblScore.ClientID %>').innerHTML = 'Test Value';
document.getElementById('<%= hdnScore.ClientID %>').value = 'Test Value';

因为它在gridview内,所以你可能喜欢特定的行标记值。

答案 1 :(得分:0)

标签是否有ID?

你可以使用JQuery的纯JavaScript来抓取它

例如:

$('#IdOfLabel').each(function(){
      var text = $(this).text();
    });

答案 2 :(得分:0)

确保ClientIDMode属性设置为Static,以便使用您提供的相同ID访问它。否则,父控件ID将附加到标签ID。

答案 3 :(得分:0)

试试这个 您需要RowDataBound事件,您可以访问asp.net创建的每一行。

代码

protected void gvCustomers_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if ((e.Row.RowType == DataControlRowType.DataRow))
    {
       LinkButton lnk = (LinkButton) e.Row.FindControl("lnk");
       Label lblName= (Label) e.Row.FindControl("lblName");                      
       lnk.Attributes.Add("onclick", "getValue(" + lblName.ClientID + ");"
    }

 }

在javascript中

function getValue(lblId)
{
     alert($(lblId).text());
}

或试试这个

只需在具有ID updateBtn的更新按钮上添加类名,然后尝试此代码

<script type="text/javascript">
        $(document).ready(function () {
            $(".updateBtn").click(function (e) {

                var Client = $(this).closest('tr').find("span[id*=lblClientName]").text();
                var Date = $(this).closest('tr').find("span[id*=ltDate]").text();
                alert(Client);
                e.preventDefault();
            });
        });
    </script>