2016-07-14 130 views
-1

我有这样一个div在我看来,要记住这是我的剃刀视图@foreach循环内:获取文本框的值

<div class="testClass"> 
    <input type="text" class="tempLabel" /> 
        <input type="button" [email protected](item.ID) class="testButton3" value="Test Alert" /> 
</div> 

这个JavaScript的工作:

$(".testButton3").click(function() {  
    alert($(this).attr('data-value'));     
     }); 

我想要做的就是我的tempClass类里面的文本框的值,当我点击上面的按钮。我试过这个,但它不起作用:

$(".testButton3").click(function() {  
     alert($(".tempLabel").($(this).val()));    
      }); 

这可能吗?也许这是不可能的文本框的值在foreach循环内......

+0

为什么这个问题被低估? – dave317

回答

1

它们可能是由foreach创建的多个元素。你可以尝试使用jQuery的.prev()方法来达到像下面一样的精确文本框。

$(".testButton3").click(function() {  
    alert($(this).prev(".tempLabel").val();     
     }); 
+0

你错过了一个括号,但这工作得很好!不知道.prev方法(或关于该问题的.next)。好想法! – dave317

+0

欢迎好友..这是一个错字:) –

+0

有趣的是需要注意的是,这两个元素需要在类的内部(本例中为testClass)才能工作。 – dave317