2017-02-15 10 views
0

Когда я запускаю JavaScript-букмарклет, модель не обновляется по угловой области. Как инициировать цикл обновления или цикла дайджестов, чтобы модель представления знала обновленное значение входного элемента?Как создать букмарклет, который обновляет элемент ввода AngularJS и обновляет область действия?

//This doesn't work, but it does update the input box: 

javascript:(function(){ 
    var elementText = 'Changed text'; 
    var inputElement = document.getElementById('inputBox'); 
    inputElement.value = elementText; 
})(); 

ответ

0

Я обнаружил, что запуск элементов изменить событие вызывает угловой переваривать цикл:

javascript:(function(){ 
    var elementText = 'Changed text'; 
    var inputElement = document.getElementById('inputBox'); 
    inputElement.value = elementText; 
    if ("createEvent" in document) { 
     var evt = document.createEvent("HTMLEvents"); 
     evt.initEvent("change", false, true); 
     inputElement.dispatchEvent(evt); 
    } else { 
     inputElement.fireEvent("onchange"); 
    } 
})();