Как я могу использовать .not jquery с .serialize - PullRequest
2 голосов
/ 10 марта 2020

Я хочу сериализовать эту форму без ввода имени lname Код:

var x = `<form action="/action_page.php">
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname" value="John"><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname" value="Doe"><br><br>
  <input type="submit" value="Submit">
</form> `;
var b =$(x).not("[name=lname]").serialize();
console.log(b);

Ответы [ 2 ]

2 голосов
/ 10 марта 2020

Для этого вам нужно вызвать :not() для input элементов внутри формы, а не самой формы. То же самое относится и к методу serialize(). Попробуйте это:

var x = `<form action="/action_page.php">
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname" value="John"><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname" value="Doe"><br><br>
  <input type="submit" value="Submit">
</form> `;
var b = $(x).find('input:not([name="lname"])').serialize();
console.log(b);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
1 голос
/ 10 марта 2020

Вы можете попробовать с .find() и Атрибут Не равно Селектор [имя! = "Значение"] :

var x = `<form action="/action_page.php">
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname" value="John"><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname" value="Doe"><br><br>
  <input type="submit" value="Submit">
</form> `;
var b =$(x).find('input[name!=lname]').serialize();
console.log(b);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...