当前位置: 首页 > 面试题库 >

使用提交按钮时,ajax调用不起作用

经昱
2023-03-14
问题内容

我正在尝试使用以下API获取实时汇率。

"http://www.exchangerate-api.com/INR/USD/1?k=FQRxs-xT2tk-NExQj"

当我单击一个按钮时,它会提示速率并正常工作。我正在使用以下Ajax代码。

<script type="text/javascript" language="javascript">
    function testCurrencyRate()
    {
        $.ajax({
                datatype:"html",
                type: "GET",
                url: "ajax/LiveCurrencyRate.php",
                data: "t="+new Date().getTime(),
                success: function(response)
                {       
                    alert(response);                    
                },
                error: function(e)
                {
                    alert('Error while fetchig the live currency rate.');                       
                }
            }); 
    }
</script>

Ajax请求转到以下LiveCurrencyRate.php页面。

$url="http://www.exchangerate-api.com/INR/USD/1?k=FQRxs-xT2tk-NExQj";               
$result = file_get_contents($url);
echo $result;

<form></form>其中包含唯一的按钮,当单击该按钮时,将对此URL发出Ajax请求ajax/LiveCurrencyRate.php

<form id="testForm" name="testForm" action="" method="post">    
    <input type="submit" id="btnTestCurrencyRate" name="btnTestCurrencyRate" value="Test" onclick="testCurrencyRate();"/>
</form>

一切都很好。但是,当我将按钮类型从更改为时,问题就出现type="button"type="submit",它不起作用。Ajax函数的错误部分中的
警报框只显示了一段时间,然后突然消失了
。我找不到任何可能导致无法完成此请求的合理原因。在上一个项目中,同样的事情对我有用,但是我XMLHttpRequest用于发出Ajax请求。这是怎么了


问题答案:

type="submit"使Web浏览器通过回发提交表单(因为您的method属性设置为“
POST”),这将导致页面刷新。标签的action属性<form>确定数据发送到的位置,然后该页面加载提供的数据。发生这种情况时,该页面上的所有javascript都将终止,因为您实际上将转到另一个页面或重新加载当前页面。



 类似资料:
  • 问题内容: 我有一个看起来像这样的表格: 当我绑定到表单的Submit()时,似乎无法访问用户单击的图像。因此,我试图绑定到单击图像本身(),该图像总是提交表单,无论我是否尝试 返回false; event.stopPropogation(); 要么 event.preventDefault(); 因为所有这些都是表单事件。 我应该将$ .post()附加到form.submit()事件上吗,如果

  • 问题内容: 我正在尝试通过AJAX提交表单,而不是使用常规的POST提交。HTML只是一个标准格式,我的jQuery代码如下: (基于此答案) 我从Submit函数返回false,但是表单仍在提交,我不知道为什么。没有收到任何Firebug错误。 问题答案: 如果html设置正确,则您的代码可以正常工作。这是我的测试html(使用php),因此您可以将其与自己的进行比较。

  • 我使用bootstrap模式获得了一个register表单,它将调用ajax post函数。 但是,它似乎并不执行我的$.post。另外,如何将php函数的返回值使用到ajax数据中?那么,如果我的createAccount返回true或其他值,我的ajax如何捕获它呢? 我的阿贾克斯。 我的CreateAccount.php 我的函数.php

  • 问题内容: 我正在编写一个Web应用程序,该应用程序使用AJAX检索大量数据,该AJAX基本上根据用户单击的按钮修改了加载的页面(假设单击button1会将页面从state0转到state1,依此类推。) 此外,如果将按钮号作为GET变量传递给服务器,则服务器将返回正确状态的页面。 不用说,后退/前进浏览器按钮不起作用,因为在通过AJAX完成状态更改期间URL不会更改。 所以,我的问题是,如何使浏

  • 问题内容: test1.php getUserName.php 数据库(用户表) 从上面开始: => 在文本框中键入“ ali ”->显示绿色消息“您可以使用它”。 => 在文本框中键入 ahmad- >以红色显示“ Username included …”消息。 我的要求是,如果消息是“您可以使用它”,请转到test2.php;如果消息是“用户名已使用…”,则表单上没有提交。 我的问题是,当我单

  • 我已经使用HTTPClient连接到一个网站,我可以成功地访问所需的数据从网站使用jSoup.我有以下代码,我需要从中提取提交按钮信息。 如何访问提交按钮的值和名称?