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

使用jQuery修改页面背景色后自动恢复默认的问题求助

问题解决:背景色修改后立即恢复默认值

问题根源

你的按钮是type="submit"类型,点击时会触发表单的默认提交行为——页面会刷新,导致刚设置的背景色被重置回初始状态。

两种解决方法

方法1:阻止表单默认提交行为

在jQuery的点击事件中添加event.preventDefault(),取消表单提交的默认动作:

$(document).ready(function () {
  $("#btn1").click(function (event) {
    event.preventDefault(); // 阻止表单提交刷新页面
    $('body').css("background-color", $("#name").val());
  });
});

方法2:修改按钮类型

把按钮的type从submit改成button,这样点击按钮不会触发表单提交,原JS代码无需修改:

<button id="btn1" type="button">Change</button>

额外优化(可选)

可以给输入框加简单的合法性校验,确保用户输入的是有效的十六进制颜色:

$(document).ready(function () {
  $("#btn1").click(function (event) {
    event.preventDefault();
    const colorVal = $("#name").val().trim();
    // 验证十六进制颜色格式
    const hexColorRegex = /^#([0-9A-F]{3}){1,2}$/i;
    if (hexColorRegex.test(colorVal)) {
      $('body').css("background-color", colorVal);
    } else {
      alert("请输入有效的十六进制颜色码(如#FFFFFF)");
    }
  });
});

内容的提问来源于stack exchange,提问作者Pranjal S Choubey

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 07:36:19