【问题标题】:Get the Text from asp:CheckBox从 asp:CheckBox 获取文本
【发布时间】:2017-07-07 14:31:03
【问题描述】:

我想使用 JavaScript 获取asp:CheckBox 的文本。

<asp:CheckBox ID="chkRoles" runat="server" Text="Testing" onclick="javascript:test(this);" />

如何从复选框中检索文本Testing?我尝试了以下方法,

JavaScript

function test(obj)
{
    var text = obj.value;
}

【问题讨论】:

  • 您错误地标记了这个。 &lt;asp:CheckBox 是 WebForms,不是 MVC
  • 我错误地点击了标签...谢谢
  • 没有 jQuery。只有纯 JavaScript

标签: javascript c# asp.net


【解决方案1】:

您可以在javascript中使用checkbox.nextSibling.innerHTML,如下所示:

<script type="text/javascript">
        function changeCheckboxText(checkbox) {

            if (checkbox.checked) {
                alert(checkbox.nextSibling.innerHTML);
            }
        }
    </script>

nextSibling 属性返回紧跟在 指定节点,在同一树级别。

代码:

CheckBox chk = new CheckBox();
chk.ID = "chkRoles";
chk.Text = "Check";
PlaceHolder1.Controls.Add(chk);
chk.Attributes.Add("onclick", "changeCheckboxText(this)");

同样使用 jQuery:

$("input:checkbox").click(function() {
  var $label = $(this).next('label');
  alert($label.text());
});

Reference

【讨论】:

    【解决方案2】:

    如果您添加 ClientIDMode="Static" 您的 ID 在客户端不会更改。

     <asp:CheckBox ID="chkRoles" runat="server" Text="Testing" ClientIDMode="Static" onclick="javascript:test(this);" />
    

    你可以像这样用jquery做到这一点

     function test(obj) {
            alert($(obj).next("label").html());
          }
    

    【讨论】:

      【解决方案3】:

      希望这段代码可以帮助你:

      <script type = "text/javascript">
          function GetSelectedItem()
          {
          var text;
             var CHK = document.getElementById("<%=chkRoles.ClientID%>");
             var checkbox = CHK.getElementsByTagName("input");
             var label = CHK.getElementsByTagName("label");
             for (var i=0;i<checkbox.length;i++)
             {
                 if (checkbox[i].checked)
                 {
                     text = label[i].innerHTML;
                     alert("Selected = " + label[i].innerHTML);
                 }
             }
             return false;
          }
          </script>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-30
        • 2020-10-03
        • 2013-11-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多