2016-12-05 97 views
0

我有一個txtSubTotal文本框,一個discount下拉菜單和一個txtGrossTotal文本框。當單擊ADD按鈕時,txtSubTotal文本框正在更新。當選擇下拉值時,txtGrossTotal文本框正在更新。但是,在更新txtSubTotal文本框時,應同時更新txtGrossTotal文本框的默認下拉值,即「0」。這裏,txtGrossTotal應該是txtSubTotal的值。文本框不會更改爲javascript中的默認下拉值

下面是我的代碼,它不會顯示txtGrossTotal當下拉都有它的默認值。 (但是,選擇其他選項後,再選擇默認值,它會更新txtGrossTotal。)

function discountedGrossTotal(dropdownVal){ 
var discountOption = document.getElementById("discount"), 
subTotal = document.getElementById("txtSubTotal"), 
grossTotal = document.getElementById("txtGrossTotal").value; 

grossTotal.value = subTotal.value - (subTotal.value * dropdownVal/100);} 

discount下拉

<select class="select" id="discount" name="discount" onchange="discountedGrossTotal(this.value);"> 
<option selected>0</option> 
<option value="2">2</option> 
<option value="3">3</option> 
<option value="4">4</option> 
</select> 

txtGrossTotal HTML

<div id="gross_total_div"> 
<input name="txtGrossTotal" type="text" id="txtGrossTotal" size="15" readonly/> 
</div> 

enter image description here

+2

請閱讀[這(如何問)(http://stackoverflow.com/help/如何提問)和[this(mcve)](http://stackoverflow.com/help/mcve),因爲這些將幫助您從社區獲得更多更好的答案。編輯你的問題,並顯示你何時/如何調用'discountedGrossTotal'函數。很可能您沒有將其設置爲字段 – Bonatti

+1

的選擇事件。當下拉列表值更改時,您似乎正在調用discountedGrossTotal()。即使您向txtSubTotal輸入值時調用此方法 – Rajashekhar

+0

@Bonatti我添加了代碼。 – EKBG

回答

0

基本上你想改變「打折」下拉值以及「分類彙總」文本框的值採取同樣的行動。所以,你必須在兩者上調用相同的函數。

您可以通過下面做在你的代碼修改實現這一點:

  1. 從「discountedGrossTotal」功能刪除參數
  2. 添加一個新的變量自己的函數中像dropdownVal =的document.getElementById(「打折」 ).value的
  3. 請撥打「txtSubTotal」文本框的變化情況相同的功能現在

,這個函數會被調用。如果這些(textbo x或下拉菜單)的值會發生變化,因此「總合計」值將相應更新。

0

請試試這個,它應該爲你工作...

 function discountedGrossTotal() { 
 
      var dropdownVal= document.getElementById("discount").options[document.getElementById("discount").selectedIndex].innerHTML; 
 
      subTotal = document.getElementById("txtSubTotal"); 
 
      grossTotal = document.getElementById("txtGrossTotal").value; 
 
      document.getElementById("txtGrossTotal").value = subTotal.value - (subTotal.value * dropdownVal/100); 
 
     } 
 
sub total: <input type="text" id="txtSubTotal" onblur="discountedGrossTotal()" /> 
 
    <br /> 
 

 
    discount: <select class="select" id="discount" name="discount" onchange="discountedGrossTotal();"> 
 
     <option selected>0</option> 
 
     <option value="2">2</option> 
 
     <option value="3">3</option> 
 
     <option value="4">4</option> 
 
    </select> 
 
    <br /> 
 
    <div id="gross_total_div"> 
 
     <input name="txtGrossTotal" type="text" id="txtGrossTotal" size="15" readonly /> 
 
    </div>

+0

好吧,無聊的編輯你的所有帖子,希望你現在就得到jist。請正確格式化您的答案。 – Liam