2009-04-27 15 views
0

ページに2つのユーザーコントロールがあり、両方にchecboxコントロールがある場合。あるユーザコントロールのチェックボックスをオン/オフにすると、他のユーザコントロールのチェックボックスをオンまたはオフにする必要があります。ページ上のユーザーコントロール間の通信 - C#/ ASP.NET

私はユーザーコントロールの通信が必要であることがわかります。

私はこれをクライアント側で行うことができますか? (私は、サーバー側のコードを使用したくない)

おかげで

答えて

1

はい、これを行う最も簡単な方法は、jqueryのCSSセレクタを使用して、チェックボックスの値を操作します。ここでそれを行うための単純なコードスニペットです:

$("#checkbox1").attr("checked", $("#checkbox2").attr("checked")) 

CheckBox1をの値がcheckbox2

1

の「確認」値がコースオフ、それは言うまでもない時に、やっての簡単な方法がある応じて設定されますこれはjQueryとなりますが、ここではそれを使わないで行う方法の例です。

<script type="text/javascript"> 
    $(function(){ 
     $("#<%=CheckBox1.ClientID %>").click(function(){ 
      $("#<%=CheckBox2.ClientID %>").checked = this.checked; 
     }); 
     $("#<%=CheckBox2.ClientID %>").click(function(){ 
      $("#<%=CheckBox1.ClientID %>").checked = this.checked; 
     });    
    }); 
</script> 

<asp:CheckBox runat="server" ID="CheckBox1" onclick="checkBoxChanged1(this)" /> 
<asp:CheckBox runat="server" ID="CheckBox2" onclick="checkBoxChanged2(this)"/> 

<script type="text/javascript"> 
var checkBox1 = document.getElementById("<%=CheckBox1.ClientID %>"); 
var checkBox2 = document.getElementById("<%=CheckBox2.ClientID %>"); 
function checkBoxChanged1(e) 
{ 
    checkBox2.checked = e.checked;  
} 
function checkBoxChanged2(e) 
{ 
    checkBox1.checked = e.checked;  
} 
</script> 

は、ここではjQueryを使用して同じ例です

関連する問題