2017-06-09 82 views
0

我想改变标签和文本框上的文本复选框单击。js不能在asp.net工作

我注意到asp.net完全支持js。

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

     $('#chkhtml').change(function() { 

      $('#Text1').prop("disabled", !$(this).is(':checked')); 



      document.getElementById('#Text1').innerHTML = 'newtext'; 

      document.getElementById('#<%=rollLbl.ClientID %>').innerHTML = 'your text goes here'; 
      document.getElementById('#testlbl').innerHTML = 'newtext'; 

     }); 


    }); 
</script> 

但它只启用或禁用文本框,但不更改任何标签或文本框的文本。

我已经尝试.value .content等,但这些工作都没有plzzz plzz帮助我。

+0

请分享HTML。 – Prabhat

+0

+0

检查我的更新代码。 – Prabhat

回答

1

你混淆了jQuery的和Javascript:

jQuery的

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#chkhtml').change(function() { 
      $('#Text1').prop("disabled", !$(this).is(':checked')); 
      $('#Text1').val('newtext'); 
      $('#<%=rollLbl.ClientID %>').html('your text goes here'); 
      $('#testlbl').html('newtext'); 
     }); 
    }); 
</script> 

请修改下面的变化在你的代码,如果你想保持原来的。

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#chkhtml').change(function() { 
      $('#Text1').prop("disabled", !$(this).is(':checked')); 
      document.getElementById('Text1').value = 'newtext'; 
      document.getElementById('<%=rollLbl.ClientID %>').innerHTML = 'your text goes here'; 
      document.getElementById('testlbl').innerHTML = 'newtext'; 
     }); 
    }); 
</script> 
+1

F.Y.I.你也混合了他们两个。 * Javascript *部分的jQuery代码仍然像DOM'ready','change'事件处理程序和'prop'方法。 –

+0

@ palaanes:同意。更好的是,如果我只保留jQuery部分的时间,一旦我有足够的时间,就会向OP提供纯JavaScript代码。 – Prabhat

+0

谢谢....但它仍然不工作在文本框...我想提到的是,文本框被禁用,并且只能通过复选框启用 –

0

您需要更改

document.getElementById('#Text1') 

document.getElementById('Text1') 

而且这类电话的休息过。 getElementById接受一个I​​D,而不是选择器。

+0

其唯一的标签工作,但不适用于文本框...和价值只改变一次我们如何检索标签或文本的旧值 –

0

您可以尝试在jQuery的

$('#Text1').html('newtext'); 
$('#<%=rollLbl.ClientID %>').html('your text goes here'); 

或在普通的JavaScript

document.getElementById('Text1').innerHTML = 'newtext'; 
document.getElementById('<%=rollLbl.ClientID %>').innerHTML = 'your text goes here'; 

,你只需要在元素的ID传递给getelementById()。但jQuery使用css查询选择器,所以#name意味着它是一个ID和.name意味着它是一个类