2016-03-05 3 views
2

Я использую прослушиватели кликов в моей готовой документации. Каждый прослушиватель кликов имеет в нем длинный код. Для простоты я создал отдельный файл сценария java и разместил в нем этот прослушиватель и в моем документе готов загрузить этот скрипт. Теперь Mozilla дает мой эту ошибкуне корректно сформирован в mozilla

не хорошо сформированную

Вот точный код, который я использую

// ChangePasswordProcess.js File 

$("#changePasswordButton").click(function(){ 
    if($("#newPassword").val() != $("#confirmNewPassword").val()){ 
     alert('Your new password did not matched'); 
     return false; 
    }else if($("#newPassword").val() == '' || $("#confirmNewPassword").val() == ''){ 
     alert('Please enter new password'); 
     return false; 
    }else{ 
     alert('Password changed successfully'); 
    } 
}); 

Вот как я ЗАГРУЗКА выше файла сценария Java в моем документе готовы

$(document).ready(function(){ 
    $(function() { 
    $.getScript('js/ChangePasswordProcess.js'); 
    }); 
}); 

На самом деле я хочу сохранить документ готовым fil e очень простой и короткий, разделив его код между различными файлами java-скриптов. Если у кого-то есть альтернативное решение для этого?

enter image description here

+1

На что указывает «не совсем сформированная» ошибка? Должна быть предоставлена ​​дополнительная информация. Также обратите внимание, что вам не нужно вставлять обработчики document.ready, поскольку вы находитесь в своем втором фрагменте кода. –

+0

Я подозреваю, что путь неправильный, и вы получаете некоторый html, который возвращается. Осмотрите сам фактический запрос в сети браузера dev и посмотрите, что содержит тело ответа – charlietfl

+0

На самом деле функция работает исправно, но я имею в виду предупреждение о консоли. И, по мнению Рори Маккроссана, я думаю, что мне нужно передать события в документе в готовом виде, поэтому я вложил его в готовый документ. –

ответ

2

Это, кажется, ошибка в Mozilla, который сообщает «Content-Type» как «приложение/XML» для файла извлеченного с помощью file:// протокола с локального диска через запросы XMLHttpRequest. Ошибка «неправильно сформирована» указывает на то, что содержимое javascript не является XML, но работа скрипта поддерживает представление, которое FireFox успешно восстанавливает. Моя догадка , что это та же проблема, как Bug 409230

Подтверждения неправильного поведения происходит от ошибки исчезающей при обслуживании той же страницы и файл JavaScript с помощью http:// с помощью/Server Express Узла работает на localhost. Node/express правильно сообщает содержимое файла javascript как «application/javascript», и нет сообщения об ошибке.

Тест HTML (с упрощена готова функция):

<!DOCTYPE html><html><head><title>Not well-formed</title> 
<meta charset="utf-8"> 
<script src="lib/jquery-2.2.1.js"></script> 
<script> 
$(document).ready(function(){ 
     $.getScript('js/ChangePasswordProcess.js'); 
}); 
</script> 
</head><body> 
password: <input id="newPassword" type="text"><br> 
confirm: <input id="confirmNewPassword" type="text"><br> 
<button type="button" id="changePasswordButton">change</button> 
</body></html> 

Script В unminified jquery-2.2.1.js file, около линии 8114, добавьте

console.log("content-type: " + jqXHR.getResponseHeader("Content-Type")); 

сообщить контент- ответ тип. js/ChangePasswordProcess.js файл не изменяется от OP.