권한 UI를 작성 중이며 각 권한 옆에 선택 목록이있는 권한 목록이 있습니다. 권한은 선택 목록에 바인딩 된 관찰 가능한 객체 배열로 표시됩니다.
<div data-bind="foreach: permissions">
<div class="permission_row">
<span data-bind="text: name"></span>
<select data-bind="value: level, event:{ change: $parent.permissionChanged}">
<option value="0"></option>
<option value="1">R</option>
<option value="2">RW</option>
</select>
</div>
</div>
이제 문제는 이것입니다. UI가 처음으로 채워질 때 change 이벤트가 발생합니다. 내 ajax 함수를 호출하고 권한 목록을 가져온 다음 각 권한 항목에 대해 이벤트가 발생합니다. 이것은 내가 원하는 행동이 아닙니다. 나는 그것이 제기 할 사용자가 정말 선택 목록에서 권한에 대한 새 값에서 선택합니다 경우에만 나는 그렇게 할 수있는 방법?
select
요소에 대한 키로 전달하는 것을 테스트했습니다 . 그러나 선택의 초기 값이 옵션 중 하나와 일치하더라도 여전히change
이벤트를 트리거했습니다 .if
핸들러 에서이 간단한 블록을 구현했을 때 모든 것이 예상대로 작동했습니다. 이 방법을 먼저 시도하십시오. 감사합니다, @Sarath!