2017-02-22 6 views
0

JavaScript/Jquery経由でアクセスできるように、asp:TreeViewに情報を追加する方法はありますか?<asp:TreeView> JavaScript/JQuery経由でアクセス可能な追加情報をtreenodeに追加しますか?

私の問題:JQuery/JavaScript(クライアント側)を介して、asp:TreeViewのチェックボックスを異なるサブカテゴリ(またはステレオタイププレフィックスでグループ化された親ノード)で選択できないようにする必要があります。これは既に$(this).next()。text();というTreeNode-Textを要求したときに働いていましたが、カテゴリにプレフィックス(ステレオタイプ)があるので、この情報を隠す必要があり、チェックする。

$("[id*=TreeView1] input[type=checkbox]").bind("click", function() { 

     var isChecked = $(this).is(":checked"); 

     if (isChecked) { 
      zuletztSelektiert = zuletztSelektiert + $(this).next().text(); 
     } 
     else { 
      zuletztSelektiert = zuletztSelektiert.replace($(this).next().text(), ''); 
     } 

     if (zuletztSelektiert != '') { 
      // Welcher Stereotyp ist selektiert? 
      var stereotype = zuletztSelektiert.substring(zuletztSelektiert.indexOf('«') + 1, zuletztSelektiert.indexOf('»')); 

      $("[id*=TreeView1] input[type=checkbox]").each(function() { 
       var currentStereotype = $(this).next().text().substring($(this).next().text().indexOf('«') + 1, $(this).next().text().indexOf('»')); 

       if (currentStereotype != stereotype) { 
        var isChecked2 = $(this).is(":checked"); 

        if (isChecked2) { 
         $(this).removeAttr("checked"); 
         zuletztSelektiert = zuletztSelektiert.replace($(this).next().text(), ''); 

         alert('It is not possible to select elements of different stereotypes. \n\n Selected Items:\n' + zuletztSelektiert); 
        } 
       } 

      }); 

     } 
    }); 
+0

こんにちは!私は方法を見つけることができなかったので、ターゲットURLにステレオタイプを追加することでそれを解決しました。 –

答えて

0

オーケー、誰も私がどれだけ私これは、リンク先のURLにGET-のParamとしてステレオタイプを追加することによって、それをやったと

$("[id*=TreeView1] input[type=checkbox]").bind("click", function() { 

     var selectedStereoType = $.trim($(this).next().prop("href").substring($(this).next().prop("href").indexOf("=") + 1)); 
     //return; 

     var isChecked = $(this).is(":checked"); 

     if (isChecked) { 
      //zuletztSelektiert = zuletztSelektiert + $(this).next().text(); 
      zuletztSelektiert = zuletztSelektiert + selectedStereoType; 
     } 
     else { 
      //zuletztSelektiert = zuletztSelektiert.replace($(this).next().text(), ''); 
      zuletztSelektiert = zuletztSelektiert.replace(selectedStereoType, ''); 
     } 

     if (zuletztSelektiert != '') { 
      // Welcher Stereotyp ist selektiert? 
      //var stereotype = zuletztSelektiert.substring(zuletztSelektiert.indexOf('«') + 1, zuletztSelektiert.indexOf('»')); 
      var stereotype = selectedStereoType; 
      var letzteMeldung = ''; 

      $("[id*=TreeView1] input[type=checkbox]").each(function() { 
       //var currentStereotype = $(this).next().text().substring($(this).next().text().indexOf('«') + 1, $(this).next().text().indexOf('»')); 
       var currentStereotype = $.trim($(this).next().prop("href").substring($(this).next().prop("href").indexOf("=") + 1)); 

       if (currentStereotype != stereotype) { 
        var isChecked2 = $(this).is(":checked"); 

        if (isChecked2) { 
         $(this).removeAttr("checked"); 
         zuletztSelektiert = zuletztSelektiert.replace($.trim($(this).next().prop("href").substring($(this).next().prop("href").indexOf("=") + 1)), ''); 

         letzteMeldung='It is not possible to select elements of different stereotypes. \n\n Selected Items: ' + zuletztSelektiert; 
        } 
       } 

      }); 

      if (letzteMeldung != '') alert(letzteMeldung); 

     } 
    }); 

のTreeNodeに-Tagにナビゲート答えを知っていないので、 C#.NETでそれを行いました treeNode.NavigateUrl = "URL?stereotype =" +ステレオタイプ。

関連する問題