如何在生成的html的onclick函数中传递参数

时间:2017-07-10 10:57:44

标签: javascript php jquery codeigniter

在我的控制器代码中包含附加形式的html代码。当我将参数传递给onclick函数时,我没有在相应的函数中获取参数。

控制器

         foreach ($cart as $item){ 
          $row_id = $item['rowid'];
          //    $count++;
            $output.='
            <tr>
               <td>'.$item['name'].'</td>
                <td>'.$item['price'].'</td>
               <td>'.$item['qty'].'</td>
               <td>'.number_format($item['subtotal'],2).'</td>
               <td> <a href="" onclick="remove("'.$row_id.'")" class="item-remove"><i class="zmdi zmdi-close"></i></a></td>
            </tr>

            ';

     }

脚本

   function remove(row_id)
    {

        alert(row_id);
    }

Onclick功能remove(),警报无法正常工作

2 个答案:

答案 0 :(得分:4)

您的旧代码正在生成

<td> <a href="" onclick="remove("1")" class="item-remove"><i class="zmdi zmdi-close"></i></a></td>

这是一个不正确的HTML

只需替换此

onclick="remove("'.$row_id.'")"

用这个

onclick="remove(\''.$row_id.'\')"

观看演示:https://eval.in/830107

答案 1 :(得分:1)

onclick="remove("'.$row_id.'")"

将导致:

onclick="remove("123")"

看哪里出错了? Onclick现在只包含删除部分(因为双引号会终止o​​nclick内容。