从具有相同名称的隐藏输入中获取价值

时间:2012-07-26 21:52:42

标签: javascript jquery

如何从cName输入中获取值:

<form method="post" action="">
  <input type="hidden" name="cName" value="test1" />
  <input type="submit" name="get" />
</form>

<form method="post" action="">
  <input type="hidden" name="cName" value="test2" />
  <input type="submit" name="get" />
</form>

当我点击使用jquery或javascript获取来自cName的值时,我想要。

6 个答案:

答案 0 :(得分:1)

当您说“点击”时,您的意思是单击提交按钮,从而提交表单?如果是这样,您应该使用submit事件,因为当用户按下Enter键时也会触发:

$("form").submit(function() {
    // finds the relevant input based on the submitted form
    // and then gets the value of that input
    var val = $(this).find("input[name='cName']").val();
    // the following line prevents the form submission, which I assume
    // you want to do because getting the value would otherwise be useless
    return false;
});

答案 1 :(得分:1)

这将给出您单击的表单的值,而不是其他表单的值:

$("[name=get]").click(function () {
    alert($(this).closest("form").find("[name=cName]").val();
    return false;  // prevent the submission
});

答案 2 :(得分:1)

 $('input[name="get"]').click(function(){
  alert($(this).closest('form').find('input[name="cName"]').val());
 return false;
});

尝试此链接http://jsfiddle.net/RqrH8/1/

答案 3 :(得分:1)

以下内容将返回您寻找的值的数组。

var arrCnameValues = $("input[name=cName]").map(function(i,c){ return c.value; });

arrCnameValues将是[“test1”,“test2”] ...然后你可以像处理任何文本值一样操纵结果。

arrCnameValues.join(',');

= test1,test2

arrCnameValues[0];

= test1

答案 4 :(得分:0)

这是您要使用的选择器,但是您需要缩小选择器的范围以获得性能,并且只获取两个或更多cName输入中的一个。

$("input[name='cName']").val()

答案 5 :(得分:0)

$(document).ready(function(){
    $('input[type="submit"]').click(function(){
        alert($($('input[name="cName"]')[0]).val() + ' ' + $($('input[name="cName"]')[1]).val());
    });
});