javascript - 单击两个单独的按钮两次更改 css?

标签 javascript jquery html css

我有一个界面,您可以按编辑键调出边框并更改其他 div 的背景颜色。编辑按钮被取消和保存按钮取代。我希望边框和背景在单击“编辑”时发生变化,并在单击“保存”或“取消”时恢复正常。

我可以在单击“编辑”时更改 div,但无法在单击“取消”或“保存”时将它们更改回来。我对两者使用完全相同的 Jquery 函数。

//show lines on clicking edit
$(".editbutton").click(function() {
    $(this).parent().find(".material_input").css("border-bottom", "1px solid #ccc").css("background-color", "#fafafa");
});

//hide lines on clicking save or cancel
$(".label-container button").click(function() {
    $(this).parent().find(".material_input").css("background-color", "#fff");
});

我知道我的第二个不包括边框。我只是想先让背景变回白色。

编辑:看起来第二个函数访问 DOM 有问题,因为我可以在 Codepen 中轻松做到这一点。如果有人可以帮助我解决这个问题,那就太好了。

这是相关类的 DOM:

.parent > .editbutton

.parent > .button-wrap > .label-container

.parent > .section > .fields > .material_input

最佳答案

根据更新后的问题,似乎将 $(this).parent() 更改为 $(this).parents('.parent') inside the click保存或取消按钮的处理程序应该可以解决这个问题。

关于javascript - 单击两个单独的按钮两次更改 css?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38490386/

相关文章:

jquery - 幻灯片图像链接在 IE9 中不起作用

javascript - bootstrap下拉菜单不下拉?

html - Bootstrap - 从导航栏链接中删除背景

javascript - 将外部 URL 包含到现有页面并溢出的方法

javascript - 如何检测弹出窗口关闭事件

jQuery Mobile 日期选择器版本问题

javascript - 通过 html 表单和 jquery 的 CouchDB 文档附件

html - HTML5 中的铰接式 3D 人

javascript - Windows 环境和移动 Web 应用程序

javascript - jquery 未检测到 Ajax 输入值更改