Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法读取属性';价值';“未定义”的定义;在dojo/request/iframe post上_Javascript_Asp.net Mvc 4_Iframe_Dojo_Image Upload - Fatal编程技术网

Javascript 无法读取属性';价值';“未定义”的定义;在dojo/request/iframe post上

Javascript 无法读取属性';价值';“未定义”的定义;在dojo/request/iframe post上,javascript,asp.net-mvc-4,iframe,dojo,image-upload,Javascript,Asp.net Mvc 4,Iframe,Dojo,Image Upload,我有一个图像上传功能,可以用如下图像上传表单: iframe(url, { form: dom.byId("myform"), handleAs: "json", timeout: 5000, method: "POST" }).then(function () { console.log("Success"); }, function (Err) { console.log(Err); }); 在服务器端我得到映像,但在客户端我得到TypeEr

我有一个图像上传功能,可以用如下图像上传表单:

iframe(url, {
    form: dom.byId("myform"),
    handleAs: "json",
    timeout: 5000,
    method: "POST"
}).then(function () {
    console.log("Success");
}, function (Err) {
    console.log(Err);
});
在服务器端我得到映像,但在客户端我得到TypeError:无法读取未定义的属性“value”↵ 在我[作为负责人]()↵ 在r()”。我没有返回值!我不知道导致错误的原因! 请帮助!

来自

重要提示:如果您的负载不是html或xml(例如文本,JSON),服务器响应需要包含内容 在
标记中。这是因为这是唯一的跨浏览器 此提供程序了解内容何时成功下载的方法 已加载。因此,服务器响应应如下所示:

iframe(url, {
    form: dom.byId("myform"),
    handleAs: "json",
    timeout: 5000,
    method: "POST"
}).then(function () {
    console.log("Success");
}, function (Err) {
    console.log(Err);
});
因此,这里是您得到错误的地方,即“无法读取
未定义的
的属性'value'”Dojo在响应中找不到
元素,因此
doc.getElementsByTagName('textarea')
返回空数组。空数组的第0个元素,
[]
,是
未定义的
,取消对它的引用将引发此错误。

来自

重要提示:如果您的负载不是html或xml(例如文本,JSON),服务器响应需要包含内容 在
标记中。这是因为这是唯一的跨浏览器 此提供程序了解内容何时成功下载的方法 已加载。因此,服务器响应应如下所示:

iframe(url, {
    form: dom.byId("myform"),
    handleAs: "json",
    timeout: 5000,
    method: "POST"
}).then(function () {
    console.log("Success");
}, function (Err) {
    console.log(Err);
});

因此,这里是您得到错误的地方,即“无法读取
未定义的
的属性'value'”Dojo在响应中找不到
元素,因此
doc.getElementsByTagName('textarea')
返回空数组。空数组的第0个元素,
[]
,是
未定义的
,取消引用它将抛出此错误。

您的链接已断开。此错误在代码中发生在哪里?将它们指向
iframe.js
没有多大帮助…我得到了Err=“Cannot read”未定义的属性“value”的值↵ 在我[作为负责人]()↵ 在r()"! 链接断了不是我的错!这是错误的值!在将来,请发布相关的服务器代码,尤其是因为您使用asp.net-mvc-4标记了这篇文章。我花了很长时间才找到问题的原因,因为我无法告诉您返回的响应是什么。您的链接已断开。这个错误在您的代码中发生在哪里?将它们指向
iframe.js
并没有多大帮助……我得到了Err=“cannotread”未定义的属性“value”的值↵ 在我[作为负责人]()↵ 在r()“!链接断了不是我的错!这是错误的值!在将来,请发布相关的服务器代码,尤其是因为您使用asp.net-mvc-4标记了这篇文章。我花了很长时间才找到你问题的原因,因为我不知道你的回复是什么。非常感谢你,你救了我一天!HandlerResponse甚至在从服务器收到响应之前就被调用(响应包装在textarea中),因此出现上述错误。请注意,这是一个INTERMITTENT,仅在第一次上传文件时发生(如果发生)。在那之后工作正常…@HiteshBajaj是的,Dojo iframe类中有一个bug。这是我几天前发现的。这是因为iframe的onload处理程序有时会由于加载默认的blank.html页面而提前触发。您可以通过重写或替换dojo/\u base/window win.global对象上的dojo\u request\u iframe\u onload()方法绕过此问题。在iframe.doc(iframe.\u frame).location.href中查找blank.html,如果看到该事件,则忽略它,否则调用原始的dojo\u request\u iframe\u onload()方法。或者,您可以通过手动调用iframe.create()来尝试预加载iframe。非常感谢您,您为我节省了时间!HandlerResponse甚至在从服务器收到响应之前就被调用(响应包装在textarea中),因此出现上述错误。请注意,这是一个INTERMITTENT,仅在第一次上传文件时发生(如果发生)。在那之后工作正常…@HiteshBajaj是的,Dojo iframe类中有一个bug。这是我几天前发现的。这是因为iframe的onload处理程序有时会由于加载默认的blank.html页面而提前触发。您可以通过重写或替换dojo/\u base/window win.global对象上的dojo\u request\u iframe\u onload()方法绕过此问题。在iframe.doc(iframe.\u frame).location.href中查找blank.html,如果看到该事件,则忽略它,否则调用原始的dojo\u request\u iframe\u onload()方法。或者,您可以通过手动调用iframe.create()来尝试预加载iframe。