将数组元素追加到FormData在Firefox 15中不起作用

时间:2012-09-06 11:34:13

标签: javascript ajax post xmlhttprequest cross-domain

我正在进行跨域ajax发布请求。 有客户端功能:

function getUsersData()
{
  var ids = ["user1_id", "user2_id"];
  var fd = new FormData();
  $.each(ids, function() {
    fd.append('identities', this);
  });
  var xhr = new XMLHttpRequest();
  xhr.open('POST', 'http://some-domain.com/Home/GetUsersData', true);
  xhr.withCredentials = true;
  xhr.onreadystatechange = responseHandler; //function is defined and not shown here
  xhr.send(fd);
}

Opera和Google Chrome浏览器中的一切正常。 但Firefox说 NS_ERROR_CANNOT_CONVERT_DATA:组件返回失败代码:0x80460001(NS_ERROR_CANNOT_CONVERT_DATA)[nsIDOMFormData.append] fd.append行('identities',this);

它可以是什么以及如何解决此错误?

1 个答案:

答案 0 :(得分:1)

尝试使用唯一键。像:fd.append('identity - '+ this.id,this);