如何使用像id一样的var

时间:2018-03-05 03:53:44

标签: javascript jquery html

我想画成div,但首先我试着改变文字,但我不能帮助我吗?我放入了控制台$("#uno")。attr(" id");并且工作,但如果我在我的函数上使用consolo.log(x)说undefined。

<a href="" onclick="cambio()" value="tres" id="uno" title="">Etiqueta uno</a>
<a href="" onclick="cambio()" id="dos" title="">Etiqueta dos</a>
<a href="" onclick="cambio()" id="tres" title="">Etiqueta tres</a>
<a href="" onclick="cambio()" id="cuatro" title="">Etiqueta cuatro</a>
var x= "";
    function cambio(){
        x = $(this).attr("id");
        console.log(x);
        $(x).text("clickeado");
    }

1 个答案:

答案 0 :(得分:0)

首先,您需要使用event.preventDefault()来阻止默认行为。其次$(this)引用上下文中的当前元素,但您没有在点击处理程序中传递this

您可以传递事件对象并使用event.target,这将提供触发点击的当前元素。使用event.target.id获取id

var x = "";

function cambio(elem) {
  event.preventDefault();
  x = event.target.id;
  console.log(x);
  $(event.target).text("clickeado");

}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="" onclick="cambio(event)" value="tres" id="uno" title="">Etiqueta uno</a>
<a href="" onclick="cambio(event)" id="dos" title="">Etiqueta dos</a>
<a href="" onclick="cambio(event)" id="tres" title="">Etiqueta tres</a>
<a href="" onclick="cambio(event)" id="cuatro" title="">Etiqueta cuatro</a>