Javascript 带有post的XmlHttpRequest-send()似乎不起作用

Javascript 带有post的XmlHttpRequest-send()似乎不起作用,javascript,ajax,Javascript,Ajax,我正在尝试以下方法: <html> <script src ="myscript.js" type = "text/javascript"> // in this file i have the foo functions defined... </script> <!--- here the page is defined --> <form action = "some.php" method = "post"> <in

我正在尝试以下方法:

<html>

<script src ="myscript.js" type = "text/javascript">
// in this file i have the foo functions defined... 
</script>

<!--- here the page is defined -->
<form action = "some.php" method = "post">
<input type = "submit" name ="exec" value = "EX" style="width:40px" id = "EX" onClick="foo();"> 
</html>
不是在我的javascript中,我调用了hello.php,而初始htmp中的表单会转到另一个文件:some.php

文件hello.php只是吐出“hello world”,而没有其他内容——此时,post变量没有任何内容是doe

现在,我希望在req.send()收到响应之前,它不会再执行任何javascript,在加载some.php之前,至少会提醒我req的状态

但是,在firefox中(除了在mydomain.name中的hello.php之外,所有文件都是从本地apache服务器执行的。我默认启用了CORS。),在通过警报了解req的状态之前,下一页加载了some.php

怎么了

PS:在SO的类似主题中有一些问题,但我似乎没有取得任何进展

编辑:如注释中所述:这是计划

  • 单击html文件开头的“EX”按钮,激活onClick函数foo()
  • foo()执行XmlHttpRequest()以从其他地方(mydomain.name)的hello.php加载响应
  • 然后foo()alos设置隐藏输入元素的值
  • 然后,由于EX是一个提交按钮,表单将所有内容(包括新设置的隐藏元素)提交给some.php,它位于同一服务器中
  • 编辑2:也尝试使用

    req.open("POST", "http://mydomain.name/hello.php", false);
    

    正如在一篇评论中提到的,它也不起作用。

    您应该显示完整的ajax代码,现在还不清楚当.foo简单地定义ldt,然后将ldata提供给隐藏元素时会调用什么。当调用submit按钮EX时,来自第一个html文件的表单称为“some.php”。但是,submit按钮EX(参见第一个html)上还定义了一个onclick方法,它从hello.phpy加载响应。您的url不正确
    mydomain.name/hello.php
    将是一个请求,返回到加载此页面的服务器,这更像
    http://example.com/mydomain.name/hello.php
    。如果你真的想做一个跨站点的请求,它必须是
    http://mydomain.name/hello.php
    。也试过了。同样的结果,没有意识到我需要提及它。抱歉:(查看浏览器的开发工具。查看JavaScript控制台。它是否报告任何错误?查看Net选项卡。是否发出请求?是否收到响应?它们是否包含您期望的数据?
    req.open("POST", "http://mydomain.name/hello.php", false);