到目前为止,我有一个由片段组成的片段。到目前为止,我还不是JavaScript方面的专家,所以如果有人能帮助我实现以下目标,我将非常感激并希望今天能够学到新东西:)
我想实现以下目标:
当用户在输入字段中键入1000000时,显示的结果如下,
目前我可以实现正确显示数字到价格,但不知道如何在价格结尾添加百万,千,百万这个词。另外,我不确定如何减去3%,并在价格之间增加3%的价格。
到目前为止,这是我的代码:
<input type="text" id="price" class="liveprice" value="<?php echo $myprice; ?>" >
<p>Higher than <span id="higher"><?php echo $myprice;?></span></p>
<p>Lower than <span id="lower"><?php echo $myprice;?></span></p>
<p>In between <span id="between"><?php echo $myprice;?></span></p>
<script type="text/javascript">
// make sure it adds commas and dots to price
$.fn.digits = function() {
return this.each(function() {
$(this).text($(this).text().replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,"));
})
}
// update in real time
$("input.liveprice").keyup(function() {
var value = $(this).val();
$("#higher").text(value).digits();
$("#lower").text(value).digits();
$("#between").text(value).digits();
}).keyup();
</script>
答案 0 :(得分:4)
如果您想知道它是否高于100万,请将数字除以1百万,然后使用Math.floor()
对数字进行舍入。如果答案高于零,那么这就是“你有多少”。然后你可以使用类似的东西插入百万字样(你需要在这里添加一些东西):
var val = $('your input').val()/1000000;
if (Math.floor(val) > 0) {
$('your element with words').text( val + " million" );
}
对1000做同样的事,但除以1000而不是1000000。