2015-03-25 96 views
1

我讀到這個線程: Simple Percentage Calculation of an Input Field with JQuery角JS計算

,但似乎無法得到它爲我的情況下工作。我有兩個輸入框,批發和銷售價格,並且我想隨着用戶改變他們的賣價計算標記(差異)。我已經建立了什麼,我想在這裏做一個簡化版本:

http://jsfiddle.net/schuss/rp0brqj1/2/

及以下的JS - 任何人都可以看到我在做什麼錯?謝謝!!

$(function() { 
 
    
 
    // cache elements that are used at least twice 
 
    var $sellprice = $("#SellPrice"), 
 
     $markup = $("#markup"), 
 
     $wholesale = $("#wholesale"); 
 
    
 
    // attach handler to input keydown event 
 
    $sellprice.keyup(function(e){ 
 
     if (e.which == 13) { 
 
      return; 
 
     } 
 
     var sellprice = parseFloat($sellprice.val()), 
 
      markup = sellprice-wholesale; 
 
     
 
     if (isNaN(sellprice)) { 
 
      $markup.hide(); 
 
      return; 
 
     } 
 
     else { 
 
     
 
     $markup.fadeIn().text(markup.toFixed(2)); 
 

 

 
     } 
 
    }); 
 
    
 
});

+0

你可以做一個小提琴,所以我們可以看到在行動 – 2015-03-25 07:02:56

+0

更新小提琴的代碼 - 我發現了一個小錯誤(即沒有實質性改變什麼,只是一個紅鯡魚)的http:/ /jsfiddle.net/rp0brqj1/4/ – BNash 2015-03-25 07:03:26

+0

你確實在嘗試使用AngularJS嗎?因爲你所做的一切只是使用jQuery。 – GregL 2015-03-25 07:24:06

回答

0

你要設置的輸入字段的值,所以在這種情況下,你需要使用$.fn.val方法:

$markup.fadeIn().val(markup.toFixed(2)); 

演示:http://jsfiddle.net/rp0brqj1/6/

+0

這有所作爲,謝謝! – BNash 2015-03-25 16:40:44

+0

如果有幫助,請隨時接受答案! – dfsq 2015-03-25 16:51:02

0

試試這個(我沒有包含其他的東西 - 不要忘了在你的小提琴中加入JQuery!):

$(function() { 

    var $sellprice = $("#SellPrice"), 
    $markup = $("#markup"), 
    $wholesale = $("#Wholesale"); 
    $sellprice.on('keyup', function(){ 
    $markup.val(parseFloat($sellprice.val()-$wholesale.val())) 
    }); 

}); 

Fiddle

+0

啊,好點,謝謝。 :)我喜歡你的方法,看起來更清潔。謝謝 :) – BNash 2015-03-25 16:41:01