Estoy en una situación donde voy a construir un div contenedor de forma dinámica que tiene otros elementos html dentro de la servidumbre a mi knockout modelo de vista. Funciona hasta el punto de que yo llame a un método en mi knockout ver el modelo que necesita redibujar toda la div. Después de la actualización knockout deja de funcionar.

por ejemplo:

 calendar += ('<div class="month-nav-container"><div class="nav-prev" data-bind="click:          $root.showPreviousMonthOnPrevMonthBtnClick" ><<<</div><span class="month-name-calendar">' + monthNames[month] + '</span><div class="nav-next" data-bind="click: $root.showNextMonthOnNextMonthBtnClick" >>>></div></div>');

Voy a construir mi calendario de control, como por supuesto, esto es sólo una parte de ella, pero espero que la Idea general.

mi knockout de vista del modelo de método:

self.showPreviousMonthOnPrevMonthBtnClick = function () {
    alert("prev");
    var $calendar = $("#calendar");
    $calendar.empty();

    //////previous month
    if (self.calendarDisplayDate.month == 0) {
        $calendar.calendarWidget({ month: 12, year: self.calendarDisplayDate.year - 1 });
    } else {
        $calendar.calendarWidget({ month: self.calendarDisplayDate.month - 1, year: self.calendarDisplayDate.year});            
    }

}

Sobre mi carga de la página que voy a construir mi calendario div, entonces yo llamo ko.applyBindings() para mi modelo de vista y funciona. Pero cuando hago clic en el botón que las calles de mi mes anterior método que necesita redibujar calendario de acuerdo a la derecha mes, octavos de final deja de funcionar. Yo redibujar todo el div padre que sostiene a todos los octavos de final de enlaces. ¿Alguien sabe la solución a mi problema. Necesito volver a dibujar el div que tiene KO enlaces dentro de lo que tal vez lo que estoy buscando es algún tipo de enlaces método de actualización de knock-out ?

Es un poco difícil responder a su pregunta sin una repro. De cualquier manera, suena un poco cutre que tiene una función de replantearse las cosas. Un enlace personalizado me suena más a lo que usted necesita, que pueden hacer que el problema desaparezca por completo. Por ejemplo algo así.

OriginalEl autor Alan Budzinski | 2013-09-17

2 Comentarios

  1. 0

    Asegúrese de que todos los elementos html que necesita actualizado unen a la observables funciones ie observablefoo y no observablefoo()

    Yo lo tengo así, pero esta no es la causa del problema

    OriginalEl autor Nikos

Dejar respuesta

Please enter your comment!
Please enter your name here