本文介绍了在Rails中单击按钮时的AJAX调用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我主要是想在单击按钮时创建一个警报,而不需要重新加载整个页面。

进入我的视图:

:javascript
  function ajax_test1(field)
  {
      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.open("GET", "test_ajax.xml?code=" + field.value, false);
      xmlhttp.send();
      xmlDoc=xmlhttp.responseXML;
      alert(xmlDoc.getElementsByTagName("message")[0].childNodes[0]);
  }

= button_to 'test ajax', :remote => true, :onclick => "ajax_test1(this);"

进入我的控制器

  def test_ajax
    @test = {message:'Hello there!'}
    render :xml => @test
  end

当我单击该按钮时,页面正在使用以下URL重新加载:

http://localhost:4242/test?onclick=ajax_test1%28this%29%3B&remote=true

我如何修复此问题?

推荐答案

我更改了此设置:

= button_to 'test ajax', :remote => true, :onclick => "ajax_test1(this);"

进入:

 = button_to_function 'test ajax', 'ajax_test1(this)'

成功了!

这篇关于在Rails中单击按钮时的AJAX调用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-24 17:17