是否可以在rails中通過控制器調用javascript函數?從控制器調用javascript函數
5
A
回答
13
我所做的是讓Rails控制器產生一個JavaScript動作。是否有它稱爲包含JavaScript的部分。
除非你想在頁面加載時激活它,否則我會通過AJAX進行設置。這樣我就可以對控制器進行AJAX調用,然後調用一個JavaScript文件。
這可以通過投票可以看出:
首先,AJAX
//This instantiates a function you may use several times.
jQuery.fn.submitWithAjax = function() {
this.live("click", function() {
$.ajax({type: "GET", url: $(this).attr("href"), dataType: "script"});
return false;
});
};
// Here's an example of the class that will be 'clicked'
$(".vote").submitWithAjax();
二控制器
是被點擊了某個屬性HREF調用的類$(".vote")
我控制器。
def vote_up
respond_to do |format|
# The action 'vote' is called here.
format.js { render :action => "vote", :layout => false }
end
end
現在控制器加載一個AJAX文件
// this file is called vote.js.haml
== $("#post_#{@post.id}").replaceWith("#{ escape_javascript(render :partial => 'main/post_view', :locals => {:post_view => @post}) }");
您已經成功地稱爲來自控制器的JavaScript函數。
+0
是否有可能在vote.js.haml中調用函數?如何在進行函數調用時傳遞一個變量? – 2011-07-29 18:25:27
0
不,但是您可以輸出將在您的視圖中立即調用的javascript
<script type="text/javascript">
function IWillBeCalledImmediately()
{
alert('called');
};
IWillBeCalledImmediately();
</script>
但是,它可能會更好地使用jQuery和使用ready事件。
<script type="text/javascript">
$(function() {
alert('called');
});
</script>
相關問題
- 1. 從Rails控制器調用JavaScript函數
- 2. 從javascript函數調用控制器
- 3. 從子控制器函數調用pushViewController
- 4. 從控制器調用JQuery函數
- 5. 從控制器Angular4調用jQuery函數
- 6. 從Laravel控制器調用Javascript函數並返回數據
- 7. 如何從瀏覽器控制檯禁用JavaScript函數調用?
- 8. 如何從Angular控制器調用JavaScript函數?
- 9. 如何在MVC 4中從控制器調用JavaScript函數?
- 10. 從javascript文件中調用控制器中的函數
- 11. 從jquery/Javascript調用控制器內的角函數
- 12. 從ROR控制器調用JavaScript函數ruby
- 13. 如何從zend控制器indexAction調用JavaScript函數?
- 14. 如何從我的控制器調用JavaScript函數?
- 15. 如何從AngularJS控制器調用自定義Javascript函數?
- 16. 不止一次從控制器調用Javascript函數(在Rails中)
- 17. 如何從MVC3中的控制器調用javascript函數
- 18. 從Javascript中調用角度控制器/函數
- 19. 從MVC控制器執行JavaScript函數
- 20. 如何從控制器和從jquery到控制器調用jquery函數
- 21. 如何從javascript調用控制器CodeIgniter
- 22. 從Javascript window.open調用AngularJS RouteProvider控制器?
- 23. 從mvc3控制器調用javascript方法?
- 24. 如何從javascript調用codeiginiter控制器
- 25. 從angularJs從控制器綁定ngModel或從ngModel調用函數
- 26. 如何使用JavaScript函數調用MVC控制器
- 27. codeignetor調用控制器中的另一個控制器函數
- 28. CodeIgniter - 關閉控制器函數調用?
- 29. Ajax調用控制器函數
- 30. 在AngularJS控制器上調用函數
ssri,我所做的是我通過AJAX調用Rails控制器,然後激活一個調用javascript函數的部分。 – Trip 2011-02-16 14:38:57