2011-05-04 48 views
1

我使用下列表格我们Esendex帐户发送短信:使用HTML后不会影响当前页面

 <form method="post" action="https://www.esendex.com/secure/messenger/formpost/SendSMS.aspx"> 

     <P>Username:<br> 
      <INPUT name="EsendexUsername" type="text"></P> 
     <P>Password:<br> 
      <INPUT name="EsendexPassword" type="password"></P> 
     <P>Account:<br> 
      <INPUT name="EsendexAccount" type="text"></P> 
     <P>Recipient:<br> 

      <INPUT name="EsendexRecipient" type="text"></P> 
     <P>Message:<br> 
      <TEXTAREA name="EsendexBody" rows="3" cols="20"></TEXTAREA></P> 
     <input type="submit" value="Send"> 
    </form> 

这工作正常,但是当我提交表单,它会自动转到Esendex页。我需要的是能够将信息发布到Esendex页面,但保持当前页面不变,因为它具有像秒表等需要进行运行的信息。

有没有简单的方法来做到这一点?我不需要Esendex网站的任何回复,只需将信息发送给它即可。

感谢所有帮助

回答

3

我觉得你有点卡住了,至少在客户端 - JavaScript中允许你做的HTTP POST请求,但仅限于您的网页是从服务的同一域,这就排除了将数据发送到Esendex。

您可以将表单提交给服务器上的脚本,并让服务器将HTTP POST发送到Esendex。

+1

若你正在做跨域请求,我想这可能是这个问题的情况下。 – Rafael 2011-05-04 08:00:54

+0

@Rafael:你完全正确,我真的应该在回答堆栈溢出问题之前尝试唤醒。答案已更正。 – 2011-05-04 08:04:21

+0

嗨保罗感谢您的回复。你的意思是我需要通过AJAX做到这一点,并提交详细信息到我的域名上的所有与Esendex工作的另一页?对于这样的事情,对不起,我有点无用 – 2011-05-04 08:33:22

5

您可以通过进行发布。

<form action="something" target="iframe_id"> 

</form> 
<iframe id="iframe_id" name="iframe_name" style="display:none;"></iframe> 

请注意。这可能会使一些企业安全测试失败。

你的另一种方法是使用AJAX使用jQuery

+1

请注意,由于浏览器的同源策略,AJAX会因跨域请求而失败。此外,如果