【问题标题】:Need form to call function and use AJAX XMLHttpRequest需要表单来调用函数并使用 AJAX XMLHttpRequest
【发布时间】:2015-05-17 01:02:39
【问题描述】:

我已经建立了一个表单,它正在寻找用户在那里输入学生 ID,然后让它在网站上查找它,然后返回拥有该 ID 的人。但是我的 ajax 请求中不断出现错误,并且它没有从网站返回任何内容。

<!DOCTYPE html>

<html lang="en">

<body>

</header>
<form>
<form  id="frm1" action= "#" method="#">
<div id="userData"></div>
StarID:<input type="text" name="starIds" id=starId>

<input type="submit" value="submit" onclick="getUser()">
</form>
</body>

function getUser() {
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("starId").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","http://cst.ridgewater.edu/Tools/AJAX_HTML   /?StarID=StarIDvalue", true);
xmlhttp.send("StarIDvalue"); 

}

我想在提交表单时调用 getUser 函数,以便能够从网站获取 StarID 值。但是现在当我尝试让程序工作时我得到了这个:跨域请求被阻止:同源策略不允许读取http://cst.ridgewater.edu/Tools/AJAX_HTML/?StarID=StarIDvalue 的远程资源。 (原因:CORS 请求失败)。

【问题讨论】:

    标签: html ajax forms


    【解决方案1】:

    您的网站似乎无权发出该 AJAX 请求。远程服务器拒绝您的请求,因为它不是来自同一个域 - 即,您的网站不是托管在 cst.ridgewater.edu 或类似网站上。

    http://en.wikipedia.org/wiki/Cross-origin_resource_sharing

    【讨论】:

      【解决方案2】:

      您可能需要编辑 HTML。有一个悬空的head 尾巴和几个开始的form 标签。

      【讨论】:

      • 谁投了反对票,勇敢地证明我错了,因为没有结尾head,而是header。我仍然看到一个无用的form 标签打开。
      猜你喜欢
      • 2016-08-25
      • 2018-04-03
      • 1970-01-01
      • 2016-06-17
      • 1970-01-01
      • 2014-07-24
      • 1970-01-01
      • 1970-01-01
      • 2021-02-03
      相关资源
      最近更新 更多