2015-02-04 2 views
0

해당 행의 값에 따라 특정 행과 열에 PasswordRenderer를 적용하려고했습니다.Handsontable Password Renderer

그래서 내 사용자 정의 렌더러는이처럼 보였다 없습니다 - 셀을 편집하는 동안

function firstRowRenderer(instance, td, row, col, prop, value, cellProperties) { 
Handsontable.renderers.PasswordRenderer.apply(this, arguments); } 

내가 직면하고있는 문제는, 필드가 더 이상 마스크입니다 그러나. 다음은 예입니다. - http://jsfiddle.net/whxbv6xh/

해당 테이블의 첫 번째 행을 시도하고 편집하면 값이 가려지지 않습니다. 어떤 아이디어?

답변

0

이 필드의 "마스크 해제"는 PasswordRenderer이 본질적으로 중요한 부분입니다. 당신은 전혀 원래 값을 볼 수 없습니다하려는 경우가 적어도 두 가지 옵션 : 미리 헤더 행의 값 1.Convert의

:

function renderAsPassword(password) { 
 
    return new Array(password.length + 1).join('*'); 
 
} 
 
alert(['', 'Kia', 'Nissan', 'Toyota', 'Honda'].map(renderAsPassword));

2.Create 내장 된 확장 사용자 정의 편집기 PasswordEditor :

var PasswordEditor = Handsontable.editors.PasswordEditor.prototype.extend(); 

PasswordEditor.prototype.getValue = function() { 
    return renderAsPassword(this.TEXTAREA.value); 
}; 

PasswordEditor.prototype.setValue = function(newValue){ 
    this.TEXTAREA.value = renderAsPassword(newValue); 
};