[object Object]和[object HtmlDivElement]之间的区别。Div玩jQuery

Kni*_*ins 4 html jquery object radio

我正在使用单选按钮之类的div,并且有一个问题。

我这样声明一个函数和变量

我设置了两种样式,一个.buttonUp和.buttonDown应用于div的onclick事件。

<script type="text/javascript">
var onCheck;

function setRadio(param_ElementRef) 
{
    if (param_ElementRef != onCheck) 
    {
        if (onCheck) 
        {
            onCheck.className = 'buttonUp';
        }
        param_ElementRef.className = 'buttonDown';
        onCheck = param_ElementRef;
    }
}
</script>
Run Code Online (Sandbox Code Playgroud)

我像这样在div中调用一个函数

<div id="Yes" class="buttonUp" onclick="setRadio(this)">Yes</div>
<div id="No" class="buttonUp" onclick="setRadio(this)">No</div>
<div id="Maybe" class="buttonUp" onclick="setRadio(this)">Maybe</div>
Run Code Online (Sandbox Code Playgroud)

这可以正常工作,但是我无法为onCheck变量设置默认值。

我尝试给divs id赋值,但是当我alert($('#Yes')显示时[object Object],而如果我alert(param_ElementRef)显示[object HtmlDivElement]

两者之间显然有区别,是否有通过id引用或类似方法返回相同对象的方法?

非常感谢

Cly*_*obo 5

alert($('#Yes')显示的原因[object Object]是因为它是一个jQuery对象。

另一方面,如果您想[object HtmlDivElement]返回,请尝试alert(document.getElementById('Yes'))使用alert($('#Yes'))

您还可以使用以下方法从jQuery对象获取纯js对象: get()

例如 alert($('#Yes'))显示出来[object Object],如果您尝试alert($('#Yes').get(0))将得到[object HtmlDivElement]