2016-03-05 80 views
2

我在文档就绪函数中使用了click listeners。每个点击监听器都有一个冗长的代码。为了简单起见,我创建了一个单独的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通过在不同的java脚本文件中划分它的代码非常简单和简短。如果任何人可以有这样做的替代解决方案?

enter image description here

+1

“不正确”的错误指向什么?应该有更多的信息给出。另请注意,您不需要像在第二个代码片段中那样嵌套document.ready处理程序。 –

+0

我怀疑路径是错误的,你正在返回一些HTML。检查浏览器开发工具网络中的实际请求本身,并查看响应正文中包含的内容 – charlietfl

+0

实际上,函数可以正常工作,但我关心的是控制台警告。并根据Rory McCrossan我想我需要handel我单击文档中的事件准备好了这就是为什么我将它嵌套在文档准备好 –

回答

2

这似乎是在Mozilla,报告“内容类型”作为“应用程序/ xml”的,用于经由使用XMLHttpRequest的从本地磁盘file://协议检索到的文件的错误。错误“格式不正确”表示javascript内容不是XML,但脚本操作支持FireFox成功恢复的视图。我猜测是,这是同样的问题Bug 409230

确认的错误行为来自于错误使用上localhost运行的节点/ Express服务器服务于同一页面和JavaScript文件通过http://时消失。 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> 

脚本 在unminified jquery-2.2.1.js file,大约线8114,添加

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

报告响应内容 - 类型。 js/ChangePasswordProcess.js文件从OP保持不变。