onclick不是一个功能

时间:2016-11-06 18:57:54

标签: javascript html

我试图让图像改变,这取决于活动形式中的哪个字段和第一个(衣领())工作,我复制并尝试下一个字段(胸部())它说不是功能有什么不对?

<input type="text" name="collar" placeholder="Collar" onclick="collar()"/>
<input type="text" name="chest" placeholder="Chest" onclick="chest()"/>

这是javascript

function collar()
{

    var image=document.getElementById('theImage')
    if(image_tracker=='upperbody' || 'chest' || 'waist' || 'under' || 'lenght' || 'shoulder' )
    {
        image.src="collar.png";
        image_tracker = 'collar';
    }
    else {
        {
            image.src = "överkropp.png";
            image_tracker = 'upperbody'
        }
    }
}

function chest()
{

    var image=document.getElementById('theImage')
    if(image_tracker=='upperbody' || 'collar' || 'waist' || 'under' || 'lenght' || 'shoulder' )
    {
        image.src="http://www.anatomyatlases.org/firstaid/images/suckingthoraxwoundB.jpg";
        image_tracker = 'chest';
    }
    else {
        {
            image.src = "överkropp.png";
            image_tracker = 'upperbody'
        }
    }
}

2 个答案:

答案 0 :(得分:0)

html属性“ id”和“ name”的值不应与您的函数名相同。 将name =“ collar”更改为name =“ others”或将函数衣领(){}更改为对others(){}的更改

由jquery函数引起的:

function $( id ){
  return document.getElementById( id );
}

答案 1 :(得分:-3)

事实上,'领()'或'胸部()'不是功能,而'领'和'胸部'是:

<input type="text" name="collar" placeholder="Collar" onclick="collar"/>
<input type="text" name="chest" placeholder="Chest" onclick="chest"/>

摆脱调用'()',它应该工作。 collar是一个函数,而collar()是调用它的结果,在这种情况下会返回undefined,因为函数没有返回值。

通常,除了函数只返回另一个函数的棘手情况之外,你永远不会在onclick属性中调用函数。