2013-11-22 5 views
2

나는 div 텍스트가 있는데 그걸 클릭하면 divinput 필드가 나타나고 텍스트를 편집 할 수 있습니다. 그런 다음 다른 곳을 클릭하면 변경 사항이 적용됩니다. 업데이트 된 값을 데이터베이스에 보내려면 ajax와 함께 PUT 메서드를 사용하고 싶지만 항목을 편집 할 때 어떻게 이벤트를 트리거 할 수 있습니까? 내보기는 다음과 같습니다아약스와 PUT 방법을 사용 knockout js

<div class="set_info" data-bind="foreach: sets"> 
<div data-bind="visible: !editing(), text: name, click: edit"></div> 
<input class = "edit_set" data-bind="visible: editing, value: name, hasFocus: editing" /></div> 

감사합니다!

답변

1

name에 구독을 사용하거나 inputevent: {change: dosomething} 바인딩을 추가하십시오. 나는 관심사의 분리에 기초하여 전자를 더 수행하려는 경향이있다. (보기 자체는 변경 될 때 어떤 요소가 서버로 이동했는지 알 필요가 없다.) 또 다른 옵션은 name을 읽기/쓰기 계산 된 관찰 가능하게 만드는 것입니다.하지만 그보다 더 많은 작업이 필요합니다.