不是jquery中的函数

时间:2012-12-03 23:55:47

标签: jquery

我有一个大问题,我无法正确执行我的jQuery代码。

我编辑了帖子以显示HTML ...

<select id="corrector" name="availability" value="" onchange="escorrecto();" >
    <option value="correcto"></option>
    <option value="incorrecto"></option>
    <option value="nodefinido"></option>
</select>

和jQuery代码......

function escorrecto() 
{
    switch ($('corrector').value) 
    {
        case 'correcto':
            alert($('corrector').value)
        break;
        case 'incorrecto':
            alert($('corrector').value)
        break;

        case 'nodefinido':
            alert($('corrector').value)
            $("#campo").prop("disabled",true); 
        break;
    }
}

1 个答案:

答案 0 :(得分:3)

$('campo').value

应该是

$('.campo').val()如果ID

,则为 OR $('#campo').val()

.value native javascript method

.val()jQuery method

如果你想使用.value那么这应该可行

$('#campo')[0].value;

同样在$("otro").attr("disabled","disabled");

更喜欢使用.prop()而不是.attr()

$("#otro").prop("disabled",true); 

检查代码

<select id="corrector" name="availability" value="" onchange="escorrecto();" >
    <option value="correcto">Correcto</option>
    <option value="incorrecto">Incorrecto</option>
    <option value="nodefinido">Nodefinido</option>
</select>

<input type="text" id="campo" value="Submit" />
<script>
    function escorrecto() 
{
    var val = $('#corrector')[0].value
    switch (val) 
    {
        case 'correcto':
            alert(val)
        break;
        case 'incorrecto':
            alert(val)
        break;

        case 'nodefinido':
            alert(val)
            $("#campo").prop("disabled",true); 
        break;
    }
}
</script>

<强> Check Fiddle