$(the).parents(“ tr”)中的the或this

时间:2018-06-29 00:14:31

标签: jquery

我正在按照说明进行jQuery挖掘:

模板:

<tr>
  <td>{{ forloop.counter }}</td>
  <td>{{ column.column }}</td>
  <td>
      <a onclick="edit_column(this, {{ column.id }})" name="edit" href="javascript:">
        <span class="glyphicon glyphicon-pencil"></span>
      </a>
      <a onclick="delete_column(this, {{ column.id }})" name="delete" href="javascript:">
        <span class="glyphicon glyphicon-trash" style="margin-left:20px;"></span>
     </a>
  </td>
</tr>

使用

编辑内容
function edit_column(the, column_id){
    var name = $(the).parents("tr").children("td").eq(1).text();

the更改为this时,它会引发错误:

  

未捕获的SyntaxError:此令牌意外

这里的the是什么,在jQuery规范中似乎不存在。

1 个答案:

答案 0 :(得分:1)

this是Javascript中的特殊关键字,不能用作普通变量名。

因此,此函数使用the作为其第一个参数的名称。由于this,它从呼叫者那里收到onclick=edit_column(this, {{ column.id }})的值。在执行onclick的情况下,this是被单击的元素。

函数参数的名称可以是任何变量,程序员只是选择使用the作为名称。但是您不能将其更改为this,因为这不是有效的变量名。