Jquery脚本:如果选中Checkbox,则更改标签文本

时间:2016-05-09 18:51:34

标签: javascript jquery asp.net

我想显示当前用户名并启用一个按钮,如果选中该复选框,但此脚本无法正常工作。看起来没有发生任何事情i-e:if语句未触发

HTML
<script>
<script>
        if($('#chbPurchaseAgree').attr('checked')) {
        $('#lblPurchaseAgreedByValue').val($('#hdnCompUserName').val());
        $('#btnPurchaseContinue').attr("Enable", true);
    }
</script>

<asp:HiddenField ID="" runat="server" ClientIDMode="Static"/> //hidden field is set in code behind    
<div class="control-group" style="float: left;">
<asp:CheckBox ID="chbPurchaseAgree" runat="server" ClientIDMode="Static" CssClass="chkbox" Text="I have read this document and agreed to the terms and conditions"/> 
</div>
<asp:Label ID="lblPurchaseAgreedByValue" ClientIDMode="Static" runat="server"></asp:Label>

5 个答案:

答案 0 :(得分:2)

我相信它不起作用,因为在执行时没有复选框。不确定是什么&#39; asp&#39;标签是,但我想这是客户端渲染的某种占位符。

所以我建议在DOM准备就绪时使用一些框架/语言回调来执行javascript。

答案 1 :(得分:0)

您可能想尝试使用jQuery的“.val()”而不是“.value”。这样:

<script>
if($('#chbPurchaseAgree').is(':checked')) {
   $('#lblPurchaseAgreedByValue').val($('#hdnCompUserName').val());
}
</script>

答案 2 :(得分:0)

在条件中检查这一点。 如果($(&#39;#chbPurchaseAgree&#39;)ATTR(&#39;检查&#39;))

答案 3 :(得分:0)

我希望这可以帮助你。

https://jsfiddle.net/ry4t9cdg/

<input id="chkbox" type="checkbox">
<input id="uname" type="text">
<button id="button" disabled>BUTTON</button>

$('#chkbox').on('change',function(){
    var self = this;
    $('#button').prop('disabled',!self.checked);
  if(this.checked)
    $('#uname').val('username');
  else
  $('#uname').val('');
})

答案 4 :(得分:0)

好的,这是我遇到的解决方案

 <script>
 function checkedchanged() {
        var chkbox = document.getElementById('chbPurchaseAgree');
        if (chkbox.checked)
            {
            $('#lblPurchaseAgreedByValue').html($('#hdnCompUserName').val());
            $('#lblPurchaseAgreedDateValue').html($('#hdnCompDate').val());
            $('#btnPurchaseContinue').attr('disabled', false);

        }
        else
        {

                $('#lblPurchaseAgreedByValue').html("");
                $('#lblPurchaseAgreedDateValue').html("");
                $('#btnPurchaseContinue').attr('disabled', true);
        }
       </script>

        <asp:Button ID="btnPurchaseContinue" ClientIDMode="Static" runat="server" Text="Continue" Enabled="false"
           ></asp:Button>

感谢sznowicki和santialurralde