You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

实现输入框输入含http的URL时隐藏按钮,否则显示的功能问询

解决URL输入检测按钮显示/隐藏的问题

嘿,你的思路已经找对方向啦!不过目前的代码只处理了隐藏按钮的场景——当用户删除输入里的http、或者输入不含http的内容时,按钮不会自动重新显示。我来帮你补全逻辑:

核心问题补充

你现有代码缺少了「当URL不包含http时,恢复显示按钮」的分支,所以需要补上else逻辑来完善闭环:

修正后的基础版本代码

$('#pasteUrl').on('input', function () {
  var str = $(this).val(); // 用$(this)替代重复选择器,代码更高效
  if (str.indexOf("http") !== -1) {
    $('#button').hide();
  } else {
    $('#button').show(); // 新增:不包含http时显示按钮
  }
});

优化建议:更鲁棒的大小写兼容检测

考虑到用户可能输入大写的HTTP,可以把输入值转成小写后再判断,避免漏判这种情况:

$('#pasteUrl').on('input', function () {
  var str = $(this).val().toLowerCase();
  if (str.indexOf("http") !== -1) {
    $('#button').hide();
  } else {
    $('#button').show();
  }
});

更简洁的写法:用toggle()方法简化代码

jQuery的toggle()方法可以直接根据布尔值控制元素显示/隐藏,一行代码就能完成逻辑,看起来更清爽:

$('#pasteUrl').on('input', function () {
  const hasHttp = $(this).val().toLowerCase().includes('http');
  $('#button').toggle(!hasHttp); // 当hasHttp为true时隐藏,false时显示
});

这样不管用户是粘贴、输入还是删除内容,按钮都会根据输入的URL是否包含http(不区分大小写)自动切换显示状态啦~

内容的提问来源于stack exchange,提问作者user4095424

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:48:02