В IE11 происходит сбой при очистке формы с 5 или более полями с использованием JQuery $ (…) .val («»)
Если я очищаю форму с 5 или более полями в IE11, используя $ ('input for'). Val (""), IE11 завершится сбоем. HTML:
<form>
<label>1</label><input type="text"/>
<label>2</label><input type="text"/>
<label>3</label><input type="text"/>
<label>4</label><input type="text"/>
<label>5</label><input type="text"/>
</form>
JS:
$(document).ready(function(){
$('#clearFormNormal').click(function(){
$("form input").val("");
});
});
Когда я делаю это рекурсивно и с setTimeout, это работает.
JS:
function clearFields (counter) {
var i = counter || 0, deferred = new $.Deferred();
if ($("form input").eq(i).length === 1){
setTimeout(function(){
$("form input").eq(i).val("");
i = i + 1;
clearFields(i).always(function(){
deferred.resolve();
});
},0);
} else {
deferred.resolve();
}
return deferred.promise();
}
$(document).ready(function(){
$('#clearFormSetTimeout').click(function(){
clearFields();
});
});
Увидетьhttp://jsfiddle.net/fransoverbeek/Cy5D5/7/ также
Это ошибка IE11?