我已经看到很多主题与此问题的相似部分,但我还没有找到解决我的确切问题的方法。我有一个在Visual Studio Express 2013 for Web中开发的网站。它包含一些jQuery 2.2.2脚本,用于确定所选文件的文件大小值。这是jQuery:
$(function() {
$('#MiscUpload').change(function () {
if (this.files[0] != null)
{
var f = this.files[0]
if ((f.size || f.fileSize) > 4096000) {
$('#UploadSizeLbl').empty()
$('#UploadSizeLbl').append("File Size: " + ((f.size || f.fileSize) / (1024 * 1024)).toFixed(1) + " MB. Cannot exceed 4 MB. Please reply to your confirmation e-mail with the file or p drive location.")
$('#UploadSizeLbl').css('color', 'red')
$('#UploadSizeTxt').val(null)
$('#MiscUpload').val(null)
} else {
$('#UploadSizeLbl').empty()
$('#UploadSizeLbl').append("File Size: " + ((f.size || f.fileSize) / (1024 * 1024)).toFixed(1) + " MB")
$('#UploadSizeLbl').css('color', 'green')
$('#UploadSizeTxt').val((f.size || f.fileSize))
}}
})
})
这在IE11中的本地计算机上运行良好。从具有IIS 8.5版的Web服务器(2012 R2)进行部署时,jQuery不会在IE 10或11中启动,并且打开或关闭兼容模式。它不是特定于此代码,还有其他.change和.click函数,它们都不适用于IE。当我在Chrome中运行该网站时,一切都运行良好。 IE可以正确执行代码,因为它在本地而不是从IIS运行时工作正常。没有错误,它根本不会触发。
我尝试将X-UA-Compatibility设置为IE = Edge,还尝试在IIS级别使用IE8和EmulateIE8。
如何让IIS中的jQuery从IE中启动?
编辑:这仍然无效。服务器位于安全区域“本地Intranet”中。默认情况下,用户选中“以兼容模式查看Intranet站点”。当他们在Compat中查看时。模式jQuery不会触发。如果他们取消选中该框,jQuery将会激活。如果他们重新检查那个框,那么jQuery仍然会被激活。
答案 0 :(得分:0)
服务器位于禁用JavaScript的不同安全区域中。将服务器的主机名或域添加到允许JavaScript的区域(例如受信任的域),或在其所在的区域上启用JavaScript。
要查看网站所在的区域,请导航至该网站,然后从显示网站区域的IE菜单中选择文件 - >属性。