2011-08-05 80 views
0

我有2種形式JavaScript的ID選擇

<form name= "form1" action=""> 
    <input type="hidden" name="max" id= "max1" value="100"/> 
    <input type="submit" class="submit" value="part 1" /> 
</form> 

<form name= "form2" action=""> 
    <input type="hidden" name="max2" id= "max2" value="200"/> 
    <input type="submit" class="submit" value="part 2" /> 
</form> 

我從這種形式在這裏得到的值

  $(".submit").click(function() { 

here -->  var max_res = $("input#max1").val(); 
       var Results = "Max Result " + max_res;  
     }); 

我的問題是我如何能動態地從MAX1更改ID,MAX2所以我可以將max2的值存儲在max-res當點擊是在form2

回答

1
var max_res = $('input[id^="max"]', $(this).parent()).val(); 
//selects the id starting with max in this form 
var Results = "Max Result " + max_res; 
+0

太感謝了!這工作。我喜歡這個網站。 – princesden

+0

@princesden - 沒有問題^ _ ^記得選擇一個可接受的答案,當你可以(爲了這個和你的其他問題) – Neal

1
var i = 1; 
var max_res = $("input#max"+i).val(); 

/編輯:我想普通類添加到所有輸入像類= 「最大」,然後:

var max_res = $(this).parent().find("input.max").val(); 
0
var max_res = $(this).closest("form").find("input:hidden").val() 
+0

......誰說不能有多個隱藏的輸入? - 那麼你卡住了! – Neal

+0

這是真的,我只是解決了當前的問題。如果有多個隱藏的輸入,可以使用name或id屬性來標識它們,並將.find選擇器更改爲.find(「input [name ='foo']」)或.find(「#foo」)。 。這些都可以工作 –