【发布时间】:2018-08-05 03:31:21
【问题描述】:
我对 JavaScript 很陌生...
我已经让这两个函数分别工作
这是一个 js fiddle,我让表格单元格显示其背景颜色:
http://jsfiddle.net/chulps/DCaQb/1321/
var colorX = '';
$('td').html(function() {
var x = $(this).css('backgroundColor');
hexc(x);
$("td").html(colorX);
})
function hexc(colorval) {
var parts = colorval.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
delete(parts[0]);
for (var i = 1; i <= 3; ++i) {
parts[i] = parseInt(parts[i]).toString(16);
if (parts[i].length == 1) parts[i] = '0' + parts[i];
}
colorX = '#' + parts.join('');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="tbl1" border="1">
<tr>
<td style="background-color: #abcdef; color: white;"></td>
</tr>
</table>
这是一个 js fiddle,我在其中获得了一个表格,可以在单击按钮时添加新行和单元格:
https://jsfiddle.net/chulps/jfr4d5cc/7/
function getRandomColor() {
var letters = '0123456789ABCDEF';
var color = '#';
for (var i = 0; i < 6; i++) {
color += letters[Math.floor(Math.random() * 16)];
}//a
return color;
}
function setRandomColor() {
$("td").css("background-color", getRandomColor());
}
var cnt = 1;
$("#anc_roll").click(function () {
setRandomColor();
});
$("#anc_add").click(function () {
$('#tbl1 tr').last().after('<tr><td style="background-color:' + getRandomColor() + '">' + '[' + cnt + ']</td></tr>');
cnt++;
});
$("#anc_rem").click(function () {
if ($('#tbl1 tr').size() > 1) {
$('#tbl1 tr:last-child').remove();
} else {
alert('One row should be present in table');
}
if ($('#tbl1 tr').size() > 1) {
$('#tbl1 tr:last-child').remove();
} else {
alert('There has to be at least one color');
}
});
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<link href="css/sticky-footer-navbar.css" rel="stylesheet" type="text/css">
<link href="css/style.css" rel="stylesheet" type="text/css">
</head>
<body class="container-fluid">
<div class="container">
<div class="row">
<div class="col-md-4"><a href="javascript:void(0);" id='anc_add'>Add Row</a></div>
<div class="col-md-4"><a href="javascript:void(0);" id='anc_rem'>Remove Row</a></div>
</div>
<div class="row">
<div class="col-md-12">
<table id="tbl1" border="1">
<tr>
<td>#FFFFFF[#]</td>
</tr>
</table>
</div>
</div>
</div>
<footer class="footer">
<div class="container-fluid">
</div>
</footer>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript" src="js/scripts.js"></script>
</body>
</html>
我似乎无法让它们一起工作 如何生成具有新随机背景颜色的行并在每个单元格中显示新生成颜色的十六进制值?
【问题讨论】:
标签: javascript jquery html css html-table