2013-07-16 71 views
0

我正在做一個rails項目。這裏說到我的問題:我有一個button_to標籤在我.haml文件:js in rails:關於onclick

= button_to "Add", add_problem_path(paper, :problem_id => problem.id), :class => 'essay_problem', :id => problem.id, :remote => true, :onclick => 'new function() { if($(".essay#3").val() == "xxxx"){ alert("Please add the essay first!"); return false; } }'

我想要做的就是讓被onclick()驗證之前發佈到add_problem_path,如果驗證通過則發佈到add_problem_path,或者它只是提醒並且什麼也不做。我該怎麼辦?

回答

0

你只是定義一個新的功能在onclick事件

創建下面的功能:在HAML文件中的JavaScript。在你的onclick函數中調用它

= button_to "Add", add_problem_path(paper, :problem_id => problem.id), :class => 'essay_problem', :id => problem.id, :remote => true, :onclick => 'return validate();' 

:javascript 
    function validate() 
    { 
    if($(".essay#3").val() == "xxxx"){ 
    alert("Please add the essay first!"); 
    return false; 
    } 
    else 
    { 
    return true; 
    } 
    } 
+0

我明白了。當'onclick'返回false時,button_to將不會發布到add_problem_path。在以前,我只是在onclick事件中返回false,這意味着返回onclick事件。非常感謝你的幫助! – kgtong