Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQueryLoad方法是否提供了与Rails replace\uHTML方法等效的ajax功能?_Jquery_Ruby On Rails_Ajax_Dom - Fatal编程技术网

jQueryLoad方法是否提供了与Rails replace\uHTML方法等效的ajax功能?

jQueryLoad方法是否提供了与Rails replace\uHTML方法等效的ajax功能?,jquery,ruby-on-rails,ajax,dom,Jquery,Ruby On Rails,Ajax,Dom,从远程文件加载HTML并将其注入DOM。例如,要将feeds.html文件加载到ID为feed的div中,可以执行以下操作: $("#feeds").load("feeds.html"); 这是使用Rails replace_html方法调用分部的替代方法,还是功能略有不同 page.replace_html 'feeds', :partial => 'main/feeds', :locals => {:feed => @feed_data } [编辑]:正如Cr

从远程文件加载HTML并将其注入DOM。例如,要将feeds.html文件加载到ID为feed的div中,可以执行以下操作:

$("#feeds").load("feeds.html");
这是使用Rails replace_html方法调用分部的替代方法,还是功能略有不同

page.replace_html 'feeds', :partial => 'main/feeds',
    :locals => {:feed =>  @feed_data }

[编辑]:正如Craig Stuntz指出的,替换html返回Javascript而不是html-这有什么优点/缺点?这是否仅仅意味着您返回的片段具有更多的功能,就像使用Javascript的网页比普通HTML页面更强大一样?或者返回Javascript而不是HTML还有其他原因吗?

最终结果大致相同,但它们的工作方式截然不同。load方法意味着您的服务器返回一个HTML片段,jQuery将其插入页面。replace_html方法意味着您的服务器返回的是JavaScript而不是html,执行该JavaScript是为了在页面中插入html片段。因此,最终生成的HTML是相同的,但是客户端和服务器之间的通信量非常不同。

返回Javascript而不是HTML的优点/缺点是什么?这是否仅仅意味着您返回的片段具有更多的功能,就像使用Javascript的网页比普通HTML页面更强大一样?或者返回Javascript而不是HTML还有其他原因吗?我认为这实际上取决于您是否关心通过网络发送的内容。如果唯一获取您的URI的客户端是您自己的Rails应用程序,那么这可能根本不重要。另一方面,如果其他客户机可能获取您的URI,可能是使用非浏览器的客户机,那么这可能非常重要。这真的取决于你在做什么。你的意思是因为有些客户端将无法处理Javascript,但很可能能够处理HTML?我认为HTML和JS或多或少是技术上的兄弟,因此任何可以处理一个的客户端都很可能处理另一个?有些客户端选择不处理JavaScript,因为它可能是一个安全漏洞。例如,Adobe Reader和Apple QuickTime都因JavaScript处理而存在严重的安全问题。