在.js中工作但在jQuery代码中不工作,为什么?

时间:2017-07-28 04:25:13

标签: javascript jquery

这个不起作用(jQuery)

function convert(degree) {

    var temp;

    if (degree == 'C') {
        temp = $('#c').val(temp * 9 / 5 + 32);
        $('#f').val(temp);

    } else {
        temp = $('#f').val(temp - 32 * 5 / 9);
        $('#c').val(temp);
    }
}

这个有用(javascript)

function convert(degree) {
    var temp;
    if (degree == 'C') {
        temp = document.getElementById("c").value * 9 / 5 + 32;
        document.getElementById("f").value = temp;
    } else {
        temp = document.getElementById("f").value - 32 * 5 / 9;
        document.getElementById("c").value = temp;
    }
}

HTML CODE HERE

<h1>TEMPERATURE CONVERTER</h1>

<p><input id="c" onkeyup="convert('C')"> &deg; Celsius</p>

<p><input id="f" onkeyup="convert('F')"> &deg; Fahrenheit</p> 

1 个答案:

答案 0 :(得分:2)

您没有正确使用.val()。它在没有参数时返回值,否则设置它。这样做:

function convert(degree) {

    var temp;

    if (degree == 'C') {
        temp = $('#c').val() * (9 / 5) + 32;
        $('#f').val(temp);

    } else {
        temp = $('#f').val() - 32 * (5 / 9);
        $('#c').val(temp);
    }
}