我正在使用jquery。我有一个在xslt中动态生成的锚标记。每个锚必须打开一个隐藏的div并在onclick事件中传递不同的值。
在隐藏的div中我有2个不同的按钮,一个用于取消动作,另一个用于确认。这个想法是:当我点击确认按钮时,previus锚点(之前被点击以显示隐藏的div)获得其他样式(我使用addClass,工作正常)。我在点击函数上传递值$(this)来创建引用,它运行良好......
问题:当我点击不同的锚点(显示div)时,单击前一个获取新值。例如,如果我点击“a”按钮,显示div,点击取消(没有发生那么好),然后点击“b”按钮并点击确认,“a”和“b”获取风格。
我只需要在所选按钮上显示样式,但不清楚我是如何做到的。
我的代码:
function showInfo(team, selectName, selectId, temps, thisid){
//Create a function that will recieves some values
var showInfoLink = thisid; //Asigh a new variable the value of thisid ( $(this) )
showInfoLink.removeClass("highlighted");
//Show the component
$("#com_advanceBet").css('z-index' , '1' );
//in the component is a select, it will show the name on the anchor of the selected item
$("select").change(function () {
var str = "";
$("select option:selected").each(function () {
str += $(this).text() + " ";
});
showInfoLink.html(str);
})
.change();
//once i click here the anchor will have this class
$('#com_continueBet').click(function(){
showInfoLink.removeClass('nostyle');
showInfoLink.addClass('highlighted');
//hide the component
$("#com_advanceBet").css('z-index' , '-999999');
});
}
这是锚:
<a href="#" onclick="showInfo('{$team}', '{$selectName}', '{$selectId}', '{$temps}', $(this) ); " class="nostyle" ><xsl:value-of select="$pt" disable-output-escaping="yes"/><span class="test" style="font-size:0.65em"><xsl:value-of select="$odds" disable-output-escaping="yes"/></span></a>
在锚点中,我将$(this)
传递给函数,但由于任何原因,它具有所有常用点击锚点的值。