2016-04-07 12 views
0

剣道グリッドにはいくつかのレコードが表示され、ユーザーはレコードを編集できます。レコードがIsReadOnlyに設定されている場合、その行コントロールは無効になり、ユーザーは読み取りのみ可能で、編集はできません。 以下は、グリッドの異なる列です。剣道UIグリッド:ビット値に基づいてセルテキストを変更する方法

columns: [ 
       { field: "Id", hidden: true }, 
       { field: "DisplayValue", title: "Description" }, 
       { field: "DisplayOrder", hidden: true }, 
       { field: "IsActive", hidden: true }, 
       { field: "IsReadOnly", title: "Read Only"}, 
       { template: kendo.template($("#activate-command-template").html()), width: 93 } 
      ] 

私はそのためのメッセージを表示したいときIsReadOnlyのが叶うなら、私は空の文字列を表示していました「この行を編集可能にするためにITを連絡する」とその偽の場合は言って記録されます。どのように私はこれをdataBoundイベントで達成するのですか?以下 は私のデータバインドされたイベントです:

if (adminView.viewModel.get("selectedControllerItemName") == "IntakeReferralMethod") { 
         var gridData = grid.dataSource.view(); 
         for (var i = 0; i < gridData.length; i++) { 
          var currentUid = gridData[i].uid; 
          if (gridData[i].IsReadOnly == true) { 
           var currenRow = grid.table.find("tr[data-uid='" + currentUid + "']"); 
           var activateButton = $(currenRow).find(".k-button").attr("disabled", true); 
} 

私の問題:私はIsReadOnlyのがtrueの場合は、「ITにお問い合わせください」とIsReadOnlyのがfalseの場合、空の文字列にテキストを設定するには、レコードのテキストを設定するにはどうすればよい

明確化が必要な場合は教えてください。私は何時間も探していて、特定のビットフィールドが真または偽のときにグリッド上のテキストを操作する方法を理解するのに役立つものは何も見つかりません。

+0

メッセージをどこに表示しますか? – whipdancer

+0

ReadOnly列。 ReadOnlyの真の値を持つテキスト "Contact IT"と、ReadOnly @whipdancer –

答えて

0

[ITに連絡]テキストを表示する各フィールドには、テンプレートを追加できます。最後のフィールドでのようなものですが、行内のデータにテンプレートをバインドし、データをチェックして1つの文字列または他の文字列を表示する条件を設定することができます。それはそれよりも複雑に聞こえる。私はコンピュータの前ではなく、メモリからここに例を行く:

{ //フィールド情報... テンプレート: ':isReadOnly? "Contact IT": "''

#:は、テンプレートを現在の行のデータにバインドします。疑問符とコロンは、インラインif-then-else文を形成します。 isReadOnlyは、行のフィールドの1つです。

結果を投稿して投稿してください。

+0

のための空白のテキストがありますので、最初は{field: "IsReadOnly"、title: " "#=(IsReadOnly)? '読み取り専用(このレコードを編集可能にするには、ITに連絡してください)': ''#"}。これは私に望ましい結果を示しました。しかし、私がグリッドに新しいレコードを追加しようとすると、 "IsReadOnly"が定義されていないと言って爆発するでしょう。これは、私がdataBoundイベントで設定するアプローチをやっている理由です。 –

+0

私は見る...しかし、他のオプションもあります。 IsReadOnlyフィールド定義で、defaultValue:false(または必要な場合はtrue)プロパティを追加したり、投稿したテンプレートで(typeof IsReadOnly!= "undefined" && IsReadonly == true)? "Contact IT": "" – Leon

+0

これは試しましたか? (私の最後のコメントで示唆したことは)それは機能しましたか? – Leon

関連する問題