以jQuery形式计算

时间:2016-07-01 08:41:40

标签: jquery html

我正在尝试制作一个带有简短计算的表格,以确定自行车的车架尺寸。

计算结果为:长度* 0.68 =帧大小。但是,如果选择了骑马销选项,则应扣除4(计算出的帧大小)。

这是我到目前为止所做的:

$("select[name='length']").change(function(){
    var $l = $('length[name='length']');
    if($l.length >140){
        var m = parseInt($l.val(), 10)
        $("#result").val(l*0.68);
    } else {
        $("p").text("Hello world!");
    }     
});
<form>
    <input type="text" value"" name="length">
    <input type="radio" name="type" value="nopin"> Zadelpen
    <input type="text" value="" id="result"/>
</form>
<p></p>

小提琴在这里: https://jsfiddle.net/m2qnf3jm/

你可以看到它没有给我任何结果。我是jQuery的新手,并试图按照我在这个主题上找到的教程。我的猜测是我需要一个按钮来启动&#39;计算?如果选择了选项鞍形销,我如何在结尾处扣除?

还有最小长度为140,所以如果某人输入的值低于此值,我会尝试回应。

4 个答案:

答案 0 :(得分:2)

&#13;
&#13;
$('#cacl_btn').on('click',function() {
$("p").text('');
  var $l = $('input[name="length"]').val();
   
  if ( $l >= 140) {
    var m = $l * 0.68;
var deduction=$('input[name="type"]').prop('checked')?4:0;
   $("#result").val(Math.round(m*100)/100-deduction);
  
  } else {
    $("p").text("length couldn't be <140");
      $("#result").val('');
  }

});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<form>
  <input type="text" value "" name="length">
  <input type="checkbox" name="type"> Zadelpen
 
  <input type="button" id="cacl_btn" value="calculate">
   <input type="text" value="" id="result" />
</form>
<p></p>
&#13;
&#13;
&#13;

如果我理解您的计算正确,请尝试运行此代码

另外,在你的小提琴中,你忘了添加链接到jquery

我还建议你使用id作为输入或类名。

答案 1 :(得分:1)

onchange 事件似乎有点歪曲。

$().ready(function () {
    //PAGE READY FUNCTION - THE PLACE TO BIND EVENTS
    $("input[name='length']").on('change, keyup', function () {
        var length = $(this).val();
        if($l.length >140)
        {
            var m = parseFloat(length);
            var value = m * 0.68;
            $('p').html("NORMAL");
            if($('#radio_button').is(':checked'))
            {
                value = value - 4;
                $('p').html("ZANDELPEN");
            }
            $("#result").val(l*0.68);
        } 
        else     
        {
            $("p").text("Too Short!");
        }
        });

});

修改

似乎太迟了。但单选按钮代码适合你。

祝你好运

答案 2 :(得分:1)

这是您的解决方案

openjpa version 2.4.1

答案 3 :(得分:0)

你的HTML和javascript很多拼写错误和语法无效。试试这个:

$('document').ready(function() {
  $('input[name="length"]').on('change', function() {
    var lengVal = $(this).val();
    var m = parseFloat(lengVal) * 0.68;
    
    $('#result').val(lengVal > 140 ? m : 'Hello World!');
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
<input type="text" value="" name="length">
<input type="radio" name="type" value="nopin"> Zadelpen
<input type="text" value="" id="result"/>
</form>