如何查找表单中第一个输入的名称,但如何排除名称为“ __RequestVerificationToken”的输入

时间:2018-11-12 00:44:17

标签: javascript jquery

我知道我可以使用以下语句获取表单中第一个输入字段的名称,但是RequestVerificationToken恰好是表单中的第一个输入,因此,如何排除它?

var fullName = $('#ForgotLoginForm').find('input').first().attr('name');

2 个答案:

答案 0 :(得分:1)

假设此__RequestVerificationToken是一个ID,请使用此选择器input:not(#__RequestVerificationToken)

var fullName = $('#ForgotLoginForm')
  .find('input:not(#__RequestVerificationToken)')
  .first()
  .attr('name');

console.log(fullName);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id='ForgotLoginForm'>
  <input id='__RequestVerificationToken' name='__RequestVerificationToken'>
  <input id='ele' name='EleFromStack'>
</div>

答案 1 :(得分:1)

您可以使用not选择器:

$('#ForgotLoginForm').find('input').not('#__RequestVerificationToken').first().css('background', 'red');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="ForgotLoginForm">
  <input id="__RequestVerificationToken" type="hidden" value="1">
  <input id="a" name="b" value="c" />
  <input id="d" name="e" value="f" />
</form>

在上面的示例中,我只是将输入的背景色设置为红色,但是您可以像在问题中那样使用name来获取attr('name')属性的值。