1

我在控制器(例如 ProductController)中得到了以下方法。

  def show
    respond_with do |format|
      format.html do
        if request.xhr?
          @product = ...
          render :status => 200, :partial => 'products/show'
        end
      end
    end
  end

当用户单击产品链接时,将打开一个带有产品图像和描述的弹出窗口。

问题:当给定用户双击产品链接时,会打开两个弹出窗口。在调试时,我注意到该ProductController#show方法只调用了一次,但仍然打开了两个弹出窗口。

4

1 回答 1

1

可能是您通过 ajax 向服务器发送请求?第二个请求将是您的链接的默认行为。尝试这个

$("a.your_link").click( function(e){
   e.preventDefault(); // this will consume default functionality of your link 
   //now send request to server
   $.ajax(url: your_url).done( function(output){
     alert(data);
   });
});
于 2013-03-19T12:33:38.597 回答