使用javascript从另一个页面获取内容不起作用

使用javascript从另一个页面获取内容不起作用,javascript,jquery,validation,Javascript,Jquery,Validation,我试图对captcha执行客户端验证。为此,我需要从外部url获取响应。我使用了下面的javascript代码 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script type="text/javascript"> function captcha_check() { var code = document.

我试图对
captcha
执行客户端验证。为此,我需要从外部
url
获取响应。我使用了下面的
javascript
代码

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript">
  function captcha_check()
  {
    var code = document.getElementById("captcha").value;
    alert(code);
    var url = "http://www.opencaptcha.com/validate.php?img='.$captcha_name.'.jpgx&ans="+code;
    alert(url);
    $.get(url,function(data,status){
      alert(data);
      if(data == "fail")
      {
        document.getElementById("captcha_error").style.display = "block";
        return false;
      }
      else
      {
        return true;
      }
    });
  }
</script>

函数验证码检查()
{
var代码=document.getElementById(“captcha”).value;
警报(代码);
变量url=”http://www.opencaptcha.com/validate.php?img=“.$captcha_name.”.jpgx&ans=“+code;
警报(url);
$.get(url、函数(数据、状态){
警报(数据);
如果(数据==“失败”)
{
document.getElementById(“验证码错误”).style.display=“块”;
返回false;
}
其他的
{
返回true;
}
});
}
但代码不起作用。
url
code
正在正确发出警报。但是
javascript
停止执行jquery函数从
url
获取内容,并跳过函数中的其余步骤

请帮我找出我的代码有什么问题


提前感谢大家。

除非响应接受来自所有域的请求,否则无法完成跨域ajax请求。 此外,我认为验证码的客户端验证不能称为“安全”

更多信息:
跨域ajax调用有安全限制

退房

我在我的位置尝试了一个你的代码,chrome返回:

XMLHttpRequest无法加载。$captcha\U名称。%27.jpgx&ans=hi。请求的资源上不存在“Access Control Allow Origin”标头。因此,不允许访问源“”

这就是您对这样的跨域调用的期望


这就是代码失败的原因

控制台中是否报告了任何错误?否。javascript控制台上没有显示任何错误。此链接将返回fail或success。用javascript在我的页面上是否有这样的内容:(就Javascript而言,我对此建议不多。一种方法是使用服务器端组件(如Java Servlet)进行调用,然后通过ajax调用将结果返回给Javascript。由于Servlet将驻留在您的域中,因此ajax调用将成功,而服务器端代码不需要他有相同的限制。此链接将返回fail或success。是否仍然可以使用javascript在我的页面上获取该链接。:(否,具有正常页面权限。仅当您具有特定的扩展权限时(您在chrome扩展中运行代码).但正如我所说的…这是不安全的…就像根本没有验证码一样。Javascript不是建立安全性的安全方法。