0

我在 javascript 方面不是很好。我已经编写了这个 javascript:

function calculateTotal()
{
    var cakePrice = 4 + ( 5 + 7 + 9 + 2 ) * ( 8 * 3 );    

    var divobj = document.getElementById('totalPrice');
    divobj.style.display='block';
    divobj.innerHTML = cakePrice;
    $('add').val(divobj);
}

当页面加载时,我在输入字段中输出它:

<body onload='calculateTotal()'>
    <input type="text" required="required" name="total" class="text" id="totalPrice"/>
</body>

问题是页面加载时该值未显示在输入字段中。当我使用 div 尝试相同的 javascript 时,它可以工作。我想让值在输入字段中输出,因为用户操作仍然需要该值。请检查并帮助我如何做到这一点。

4

3 回答 3

1

您正在寻找.value

divobj.value = cakePrice;

更普遍:

// the selector is here for caching, so the browser doesn't have to look for it every time
// Make sure you put your code in the bottom of the body section, or inside a ready handler
var divobj = document.getElementById('totalPrice'); 
function calculateTotal(){

    var cakePrice = 4 + ( 5 + 7 + 9 + 2 ) * ( 8 * 3 );    
    divobj.style.display='block';
    divobj.value = cakePrice;
}

工作小提琴

于 2013-05-29T19:08:57.077 回答
0

很简单,您已经将元素以及要显示的值存储在变量中:

divobj.value = cakePrice;
于 2013-05-29T19:09:24.907 回答
-1

尝试这样做:

<input type="text" id="totalPrice" />

JS:

$().ready(function(){
    var total = 4 + ( 5 + 7 + 9 + 2 ) * ( 8 * 3 );
    $('#totalPrice').val(total);
});
于 2013-05-29T19:10:30.997 回答