如果来自用户Java Jquery的输入,则来自输出

时间:2014-02-28 13:26:56

标签: jquery

我已经使用JQuery将网站用户输入的数字乘以52.但是我努力在句子中间获得“输出值”而不删除句子的结尾用户输入他的号码。

任何人都知道如何避免它?我试过这似乎对某些人起作用,但对我来说不行。

此外,一旦用户可以看到输出,我试图放入一个按钮,以便当输出在某些数字内时,它打印出下面的另一个句子。这没有出现。

请查看我到目前为止的内容;

<!DOCTYPE html>
<html>
<body>

<src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">

<p>How many times do you have drink coke each week?</p><br>
<p></p>
<input type="text" id="input-value" /> times a week.<br>
<p></p><br>

<p>With 52 weeks in a year, the number of Coke's you would need for the year is at least  
    <output type="text" id="output-value" /> cans </p>

<p>Click the button to find out the best membership plan for you</p>

<button onclick="myFunction()">Try it</button>

<p id="demo"></p>

<script>
var $output = $("#output-value");
$("#input-value").keyup(function() {
var value = parseFloat($(this).val());
$output.val(value*52);
});
function myFunction()
{
var x="";
var $output = $("#output-value");
if ($output<120)
{
x="Good man";
}
else ($output>120)
{
x= "Bad";
}
document.getElementById("demo").innerHTML=x;
}
</script>

任何帮助都会受到赞赏!

这是JSFiddle以我描述的方式工作,你会发现问题。

干杯

詹姆斯

2 个答案:

答案 0 :(得分:0)

用doc ready块包装它:

$(function(){
   var $output = $("#output-value");
   $("#input-value").keyup(function() {
     var value = parseFloat($(this).val());
     $output.val(value*52);
   });
});

function myFunction()
{
   var x="";
   var $output = $("#output-value");
   /// your code
}

答案 1 :(得分:0)

你很亲密。更改$ouput值时,您可以在以下字符串后连接字符串'cans':

$output.val(value*52 + ' cans');

然后,在您的函数中,如果您希望条件起作用,则必须解析值:

var $output = parseInt($("#output-value").val(), 10);

而你的其他人不需要条件。您的最终代码是:

var $output = $("#output-value");
$("#input-value").keyup(function() {
    var value = parseFloat($(this).val());
    $output.val(value*52 + ' cans');
});
function myFunction()
{
    var x="";
    var $output = parseInt($("#output-value").val(), 10);
    if ($output<120)
    {
        x="Good man";
    }
    else
    {
        x= "Bad";
    }
    document.getElementById("demo").innerHTML=x;
}

Fiddle