2016-11-22 86 views
-3

在我的C#MVC應用程序捕獲一個文本框的值,我有一系列被這樣產生的文本框...如何從OnChange事件

@foreach (object item in items) 
{ 
    @Html.TextBox(....) 
} 

呈現的結果是一系列文本盒子看起來像這樣的....

<input class="item-quantities valid" data-bomid="1939" data-rid="2054" id="AddedItemIDs_1939_" name="AddedItemIDs[1939]" onchange="ChangeItemQuantity(156,78)" onkeypress="return isNumberKey(event)" type="text" value="7" aria-invalid="false"> 

<input class="item-quantities valid" data-bomid="1940" data-rid="1055" id="AddedItemIDs_1940_" name="AddedItemIDs[1940]" onchange="ChangeItemQuantity(159,90)" onkeypress="return isNumberKey(event)" type="text" value="1"> 

現在,我需要一個JavaScript/jQuery函數中,我可以捕獲三個值:

  1. bomid
  2. 擺脫
  3. 文本框中

我就好捕捉值當文本框失去焦點(標籤拖出等)

我已經試過這種新的價值(不平變化= 「ChangeItemQuantity()」在文本框中),但由於某種原因,我永遠不能讓這個事件觸發。另外,我寧願不做這樣,因爲那時我被迫要在我分配到文本框哪個班剛性....

$(function() { 
     $('.item-quantities.valid').change(function() { 
      var value = $(this).val(); 
      var bomid= $(this).data('bomid'); 
      var rid= $(this).data('rid'); 
     }); 
    }); 

我試圖這樣(平變化=「ChangeItemQuantity (159,90)「)。我寧願做這種方式,因爲它可以讓我跟在文本框中類靈活...

function ChangeItemQuantity(bomid, rid) { 
    // no idea how I would capture the value here. 
} 
+0

什麼是你想與捕獲的值呢?你正在實現某種類型的VM商店,或者這是通過ajax更新你的模型? – Jecoms

+0

通過ajax更新模型。我不擔心這一部分。這只是讓我現在正在引起麻煩的價值觀。甚至沒有價值。只是文本框的實際值。 –

+0

我希望人們能解釋他們的倒票 –

回答

2

添加另一個函數參數傳遞的元素,並得到它的value

onchange="ChangeItemQuantity(156,78, this)" 

function ChangeItemQuantity(bomid, rid, el) { 
    alert(el.value) 
} 
0

你可以獲取這樣的屬性值,

function getValues(){ 
var actual=$(this).value; 
var bomid=$(this).attr('bomid'); 
var rid=$(this).attr('rid'); 
}