2017-03-04 53 views
0

请我试图添加一个onclick事件到我的按钮在rails 5上,当点击这个功能是添加行到表,但它不工作我需要帮助。如何添加和onclick事件到一个submit_tag

**addRow function** 

function addrow(count){ 
    var table = document.getElementById("result_table"); 
    var row = document.getElementById("result_table").lastChild; 
    var clone = row.cloneNode(true); 
    for (i=0; i<count; i++)}{ 
    table.appendChild(clone); 
    } 
} 

和上面的功能是在一个名为controlMenus.js这是摆在C文件:\ Users \用户名\文档\百货\程序\资产\ JavaScript的 Rails项目目录。

**The view** 

<div = "row"> 
    <div class = "col-8"> 
    <div class = "col-1"></div> 
    <div class = "col-1 no-padding"> 
     <%= render 'layouts/lecturer_menu' %> 
    </div> 

    <div class = "col-5 no-padding margin-left"> 
     <div class = "trans-background no-padding"> 
     <h5 class = "pad-left centered black-font">ENTER RESULT</h5> 
     <table id = "result_table" border = "1" style="width: 100%; 
       align: center;"> 
      <th>S/N</th> 
      <th>MATNO</th> 
      <th>NAME</th> 
      <th>COURSE TITLE</th> 
      <th>COURSE CODE</th> 
      <th>GRADE</th> 
      <th>POINT</th> 
      <tr> 
      <td>1</td> 
      <td>HELLO</td> 
      <td>HELLO</td> 
      <td>HELLO</td> 
      <td>HELLO</td> 
      <td>HELLO</td> 
      <td>HELLO</td> 
      </tr> 
      <% for i in([email protected]_i)do %> 
      <tr> 
       <td><%= i+1 %></td> 
       <td>HELLO</td> 
       <td>HELLO</td> 
       <td>HELLO</td> 
       <td>HELLO</td> 
       <td>HELLO</td> 
       <td>HELLO</td> 
      </tr> 
      <% end %> 
     </table> 
     <%= form_for :rows, url: {controller: "lectureractivities", 
       action: "addrow"} do |f| %> 
      <%= f.number_field :row, {min: 1, class: "fixed-width"} %> 
      <%= submit_tag :addrows, onclick: "addrows();" %> 
     <% end %> 
     </div> 
    </div> 
    <div class = "col-1"></div> 
    </div> 
</div> 

回答

2

什么是不工作的意思?你做了什么来调试?你确认js文件正在加载吗?你有没有记录任何东西到控制台,以确保你的js函数变量是你期望他们是什么?对于初学者来说,有一些在你的HTML错误的,最明显的是在这一行

<%= submit_tag :addrows, onclick: "addrows();" %> 

你调用一个函数“addrows”,但你的函数定义为“addrow”。尝试将其更改为

<%= f.submit_tag :addrows, onclick: "addrow();" %> 
+0

好的,谢谢@margo,这是一个错误的错误** addrows()**,它现在的工作。 –

+0

如果我的答案对您有帮助,请点击对勾或点击向上箭头 – margo

+0

就可以接受它。再次感谢您的时间。 –

相关问题