Telerik 그리드를 사용하여 MVC3에 페이지가 있습니다. 격자에서 각 행에 대해 십진수를 입력하는 텍스트 상자입니다. jQuery 플러그인 (autoNumeric.js)을 연결하는 데 사용되는 CSS 클래스 'HoursNew'가 있습니다. 또한 십진법 입력을 가장 가까운 반 십진수로 반올림하는 onBlur 함수가 있습니다. 문제는 열을 정렬 한 후에 모든 JavaScript가 작동하지 않는 것 같습니다. autoNumeric.js는 onBlur를 실행 한 함수와 함께 작동하지 않습니다.Telerik MVC Grid - sorting이 자바 스크립트를 중지합니다
$(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);
}
페이지는 첫 번째로드시 잘 작동하며 정렬 후에는이 문제가 발생합니다. 어떤 제안?
거의 ... 내가 onDataBound에 전체 스크립트 태그를 추가 할 필요가 있었다. ('pSign :'s ', vMin :'-999.5 ', vMax :'999.5 ','vCard : '999.5', '$ ('. HoursNew') blur (function() {roundToHalf (this);}), }); } ' – Greg
... 링크에 감사드립니다. 이제 잘 작동합니다. – Greg