如果失败,.val()会返回什么?

问题描述 投票:-1回答:3

我试图使用Jquery .val()函数插入一个值 -

$("myDob").val(birthDate);

现在我想实现这样的逻辑 -

if (insertion of value is successful) 
{
   Do something
}

Otherwise
{
   Do something else
}

我该如何实现?我基本上想要处理值插入失败的场景。

提前致谢!

javascript jquery
3个回答
1
投票
var birthDate = '01/01/1990';
$("myDob").val(birthDate);

// Now check val of myDob equal birthDate
if ($("myDob").val() == birthDate) {
   // do something
} else  {
   // do something else
}

希望可以帮到你! :3


3
投票

如果用参数调用,.val()是一个setter。它返回您调用方法的元素本身。无法插入的情况是元素本身不存在的情况。

因此,您可以通过检查.length返回的.val()属性来检查它是否存在。

var x = $("myDob").val("somevalue");

if (x.length) {
  console.log("1 Updated successfully");
} else {
  console.log("1 Updation Failed");
}


var x = $("#goodInput").val("somevalue");

if (x.length) {
  console.log("2 Updated successfully");
} else {
  console.log("2 Updation Failed");
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="goodInput">

0
投票

你可以用不同的方法做同样的事情。为什么不检查birthdate变量不是nullundefined。如果变量有一个值,那么val()函数肯定有效。

if (birthDate != undefined || birthDate != null) {
    $(".YourClass").val(birthDate);
}

通过上面的方法,脚本将在检查变量后为选定元素添加值。

© www.soinside.com 2019 - 2024. All rights reserved.