当我单击div标签时,我实现了jquery javascript onclick来切换div标签的不透明度(0和100)。我用了jQuery和 javascript按数组,onclick,按ID获取元素等等。
但是即使刷新页面,我也希望将其保存在数据库中,以便获得单击的屏幕。
那么,是否有一种方法可以让我每次单击该信息到数据库?我想尽可能多地使用jquery。因为我不了解ruby在rails上的link_to函数。
我尝试使用jquery保存数据,但失败了。由于我再次使用jquery onclick事件,因此更改了多个div的不透明度(通过onclick)已经消失了。
<table>
<tr id="line1">
<td class="timeTableCellTime">9:00</td>
<td class="time_td">
<div class="timeTableCell" id="c1-1"></div>
</td>
<td class="time_td">
<div class="timeTableCell" id="c1-2"></div>
</td>
<td class="time_td">
<div class="timeTableCell" id="c1-3"></div>
</td>
<td class="time_td">
<div class="timeTableCell" id="c1-4"></div>
</td>
<td class="time_td">
<div class="timeTableCell" id="c1-5"></div>
</td>
<td class="time_td">
<div class="timeTableCell" id="c1-6"></div>
</td>
<td class="time_td">
<div class="timeTableCell" id="c1-7"></div>
</td>
</tr>
</table>
var array = ['c1-1', 'c1-2', 'c1-3', 'c1-4', 'c1-5', 'c1-6', 'c1-7']
$('#line1 td').click(function() {
var i = $(this).index();
var element = document.getElementById(array[i - 1]);
if (element.style.opacity === "100") {
element.style.opacity = "0";
element.style.transition = "0.2s";
} else {
element.style.opacity = "100";
element.style.transition = "0.2s"
}
});
.timeTableCell {
width: 100px;
text-align: center;
height: 55px;
background-size: cover;
background-repeat: no-repeat;
border-radius: 3px;
opacity: 0;
transition: 0.1s;
cursor: pointer;
}
.timeTableCell:hover {
opacity: 100;
transition: 0.2s;
}
#c1-1,
#c2-1,
#c3-1,
#c4-1,
#c5-1,
#c6-1,
#c7-1,
#c8-1,
#c9-1,
#c10-1,
#c11-1,
#c12-1,
#c13-1 {
background-image: url('cell_01.png');
}
答案 0 :(得分:0)
您可以使用我认为的Cookie
这里有两个cookie操作功能 Set cookie and get cookie with JavaScript
首先使用getCookie('key')获取cookie(如果它的null值,则在用户单击时使用newCookie('key','DIV_ID')将其重新开始),如果它不为null,则可以执行所选的div操作/ p>