2012-11-20 8 views
0

필자는 선택 상자가 값을 변경할 때 동적으로 채워 져야하는 입력 필드를 가지고 있습니다. 그래서, 변수를 입력에 바인딩하고 또 다른 값을 선택 상자의 선택된 값에 바인딩했습니다. 이제 입력 값을 프로그래밍 방식으로 변경할 수있게하려고합니다. selectbox의 특정 값에 대해 값은 빈 문자열이어야하고 다른 경우 사용자가 일부 동작을 수행 할 때 일부 JavaScript 코드로 설정해야합니다. 하지만 계산 된 함수를 사용하여 빈 문자열을 반환 할 수는 있지만 문제가 발생합니다. 다른 선택 상자 옵션을 선택하면 프로그래밍 방식으로 값을 어떻게 설정할 수 있습니까?계산 된 관측 가능한 동적 변수

답변

1

select이 변경되어 사용자가 자유롭게 업데이트 할 수있게하려는 경우 목표는 input의 기본값으로 설정하고 manual subscription을 사용하는 것이 좋습니다.

var ViewModel = function() { 
    this.selectedValue = ko.observable(); 
    this.otherValue = ko.observable(); 

    this.selectedValue.subscribe(function(newValue) { 
     //perform whatever logic that you need to determine how the other value should be populated based on the dropdown's current value (newValue) 
     this.otherValue(calculatedValue); 
    }, this); 
}; 
+0

내 진짜 목표는 값을 수동으로 입력 한 다음 설정하도록 요구하는 일부를 제외한 모든 선택 상자 옵션에 대해 빈 값을 갖는 것입니다. 사용자가 빈 문자열을 입력 값 knockout으로 사용해야하는 옵션을 선택하면 비어있는 문자열을 설정해야합니다. – Stefano

+0

http://jsfiddle.net/rniemeyer/ELywY/ 또는 옵션에 실제 값이 있습니다. 일부는 무시할 수 있습니까? –

+0

가입자를 사용하여 문제를 해결했습니다. 솔루션이 작동합니다. 감사합니다. – Stefano

관련 문제