javascript - 当我的输入为空时,为什么 $(...).val() == "" false?
问题描述
我想在input
元素内部没有任何内容时删除一个类,例如在 Google 中,当您的搜索输入为空时,它不会显示建议。
我已经尝试过了,但它不起作用:
$(".sc").keyup(function() {
var x = $(this).val();
$.post("search.php", { search: x }, function(checkSearch) {
if (x == "") {
$(".search").removeClass("searchOn");
$(".search").html(checkSearch);
} else {
$(".search").html(checkSearch);
$(".search").addClass("searchOn");
}
});
});
我该如何解决?
解决方案
if(x == '')
捕获空字符串,而不是 null。
尝试if(!x)
改用(查看 x 是否为空、未定义或空字符串)。
推荐阅读
- ruby-on-rails - 如何使用 PostGres 数据库将 Rails 5 应用程序部署到 Heroku?收到错误提示我仍然设置了 sqlite 适配器
- javascript - 使用 GlideJS 轮播自动播放开始/停止
- xml - 在 XSLT 中恢复数据
- node.js - 根据环境设置更改应用程序的配置:生产与开发
- mongoose - 猫鼬 - .catch 没有捕捉到错误
- excel - 按顺序打开和关闭 Excel 以将数据导入 SAP GUI 时循环跳过最后一行
- php - 用于 CRUD 的 Laravel 控制器,无需在控制器方法中查询数据库
- oauth-2.0 - 授权我的 Google Drive 应用程序获取无效请求
- graphql - 从第三方库创建 GeoJSON GraphQL 架构
- linux - Linux 内核中的上下文切换时间