2012-02-16 6 views
0

私はTelerikグリッドを使用してMVC3のページを持っています。グリッドでは、各行に対して、小数点を入力するテキストボックスです。私は、jQueryプラグイン(autoNumeric.js)に接続するために使用されるCSSクラス、 'HoursNew'を持っています。また、小数点の入力を最も近い半分の10進数に丸めるonBlur関数もあります。 問題は、列をソートした後、すべてのJavaScriptが動作を停止しているように見えることです。 autoNumeric.jsは、onBlurを起動した関数と一緒に動作しなくなります。Telerik MVCグリッド - 並べ替えがJavaScriptを停止

$(document).ready(function() { 
    $('.HoursNew').autoNumeric({ pSign: 's', vMin: '-999.5', vMax: '999.5', mRound: 'C', aPad: false }); 
    $('.HoursNew').blur(function() { roundToHalf(this); }); 
}); 

      // Round decimal to nearest .5 
      // v is input object 
      function roundToHalf(v) { 
       var value = v.value; 
       var r; 
       //alert(v.id); 
       var converted = parseFloat(value); // Make sure we have a number 
       var decimal = (converted - parseInt(converted, 10)); // Pull the decimal value 
       decimal = Math.round(decimal * 10); 
       if (decimal == 5) { return (parseInt(converted, 10) + 0.5); } // leave alone if .5 
       if ((decimal < 3) || (decimal > 7)) { 
        r = Math.round(converted); // Round up or down to nearest whole number 
       } else { 
        r = (parseInt(converted, 10) + 0.5); //round to .5 
       } 
       //alert(r); 
       // reset input value to new value 
       $('#' + v.id).val(r); 
      } 

ページは最初の読み込み時に問題なく、ソート後にこの問題が発生します。助言がありますか?

答えて

1

ソート時にグリッドが新しいグリッドをレンダリングするajax呼び出しを行っていることがあります。つまり、$(document).readyで実行したバインディングは削除されます。

Telerik documentationのクライアントサイドイベントでこのページをご覧ください。あなたは、グリッドの定義には、このセクションを追加する必要があります。

.ClientEvents(events => events 
    .OnDataBound("onDataBound") 

そして、このJavaScriptは再バインドする:

function onDataBound(e) { 
    $('.HoursNew').autoNumeric({ pSign: 's', vMin: '-999.5', vMax: '999.5', mRound: 'C', aPad: false }); 
    $('.HoursNew').blur(function() { roundToHalf(this); }); 

} 
+0

ほとんど...私はonDataBoundで全体のスクリプトタグを追加する必要がありました。 autoNumeric({pSign: 's'、vMin: '-999.5'、vMax: '999.5'、 'vCard:'999')は、$( '。HoursNew')。blur(function(){roundToHalf(this);}); }); } ' – Greg

+1

...リンクに感謝します。今すぐうまくいく。 – Greg

関連する問題