我找到了解决方法来折叠表格中的行。但是我无法通过一次单击制作一个同时展开和折叠的按钮。
任何人都可以帮我找到简约的解决方案吗?
对于Live-Demo,您可以使用:use for live demo(通过复制以下代码)
感谢。
更新 我只需要扩展和折叠(隐藏和显示)所有" SIGNALS"。 " FRAMES"必须一直显示。 用于expand_all的按钮和用于collaps_all的按钮也可以。
更新2: 它必须是这样的:expand/collaps all但仅适用于表格。
我的代码:
<!DOCTYPE html><html>
<script src="http://code.jquery.com/jquery-2.2.2.min.js"></script>
</script><script type="text/javascript">
$(document).ready(function() {
$('.expandable').click(function () {
$(this).nextAll('tr').each( function() {
if($(this).is('.expandable')) {
return false; }
$(this).toggle();
});
});
$('.expandable').nextAll('tr').each( function() {
if(!($(this).is('.expandable')))
$(this).hide();
});
});
</script><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Restbus for CAN based on AUTOSARr4.1</title>
</head>
<body>
<h2>RSS</h2>
<button id="click_for_show_all">Show/Hide all</button>
<form action="/cgi-bin/check.cgi">
<table border="1">
<tr bgcolor="#fb9d00">
<th>FRAMES</th>
<th>ID</th>
<th>LENGHT/B</th>
<th>CAN-FD?</th>
<th>SET</th>
<th>SIGNALS</th>
<th>POS</th>
<th>LENGTH/b</th>
<th>select:</th>
</tr>
<tr class="expandable">
<td><strong>BkUpSysPwrMdGrp_MSG</strong></td>
<td>837</td>
<td>1</td>
<td>true</td>
<td><input type="checkbox" name="837" value="0.25" checked></td>
<tr><td><td><td><td><td>
<td><span title="Backup System Power Mode Group : Backup Power Mode Invalid
">IBkupPwrMdMstr_Inv</span></td>
<td>3</td>
<td>1</td>
<td><select name="value"><option value="0">FALSE</option>
<option value="1">TRUE</option></select></td>
</td></td></td></td></td></tr>
<tr><td><td><td><td><td>
<td><span title="Backup System Power Mode Group : Backup Power Mode Master Enabled
">IBkupPwrMdMstrEn</span></td>
<td>4</td>
<td>1</td>
<td><select name="value"><option value="0">FALSE</option>
<option value="1">TRUE</option></select></td>
</td></td></td></td></td></tr>
<tr><td><td><td><td><td>
<td><span title="Backup System Power Mode Group : System Backup Power Mode
">IBkUpSysPwrMd</span></td>
<td>7</td>
<td>3</td>
<td><select name="value"><option value="0">OFF</option>
<option value="1">ACC</option>
<option value="2">RUN</option>
<option value="3">PROPULSION</option>
<option value="4">START</option></select></td>
</td></td></td></td></td></tr>
</tr>
<tr class="expandable">
<td><strong>C8_LRRODP_Brst1_PCSM_MSG</strong></td>
<td>1896</td>
<td>8</td>
<td>true</td>
<td><input type="checkbox" name="1896" value="16.08" checked></td>
<tr><td><td><td><td><td>
<td><span title="Long Range Radar Object Detection and Processing Burst 1 Protected Counter Sync Message
">ILRRODP_Brst1_PCSM</span></td>
<td>0</td>
<td>64</td>
<td><input type="number" name="value" value="0" min="0.0" max="1.8446744073709552E19"></td>
</td></td></td></td></td></tr>
</tr>
</table>
<br><input style="font-size:25px" type="submit" value="START">
</form>
<button style="font-size:25px" type="button" onclick="alert('Please simple use the browser inbuilt search funktion. (CTRL+F)!')">SEARCH</button>
</body>
</html>
答案 0 :(得分:0)
尝试这个
$(document).ready(function() {
$('.expandable').click(function () {
$(this).nextAll('tr').each( function() {
if($(this).is('.expandable')) {
return false; }
$(this).toggle();
});
});
$('.expandable').nextAll('tr').each( function() {
if(!($(this).is('.expandable')))
$(this).hide();
});
$("#click_for_show_all").click(function(){
$('.expandable').each( function(){
$(this).nextAll('tr').toggle();
});
});
});
答案 1 :(得分:0)
像这样的东西。 jQuery .toggle()可以做到这一点
<!DOCTYPE html>
<html>
<script src="http://code.jquery.com/jquery-2.2.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var show = true;
$('#click_for_show_all').click(function() {
if (show) {
$('td').hide();
$('td strong').parents('tr').find('*').show();
} else {
$('td').show();
}
show = !show;
});
});
</script>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Restbus for CAN based on AUTOSARr4.1</title>
</head>
<body>
<h2>RSS</h2>
<button id="click_for_show_all">Show/Hide all</button>
<form action="/cgi-bin/check.cgi">
<table border="1">
<tr bgcolor="#fb9d00">
<th>FRAMES</th>
<th>ID</th>
<th>LENGHT/B</th>
<th>CAN-FD?</th>
<th>SET</th>
<th>SIGNALS</th>
<th>POS</th>
<th>LENGTH/b</th>
<th>select:</th>
</tr>
<tr class="expandable">
<td><strong>BkUpSysPwrMdGrp_MSG</strong>
</td>
<td>837</td>
<td>1</td>
<td>true</td>
<td>
<input type="checkbox" name="837" value="0.25" checked>
</td>
<tr>
<td>
<td>
<td>
<td>
<td>
<td><span title="Backup System Power Mode Group : Backup Power Mode Invalid
">IBkupPwrMdMstr_Inv</span>
</td>
<td>3</td>
<td>1</td>
<td>
<select name="value">
<option value="0">FALSE</option>
<option value="1">TRUE</option>
</select>
</td>
</td>
</td>
</td>
</td>
</td>
</tr>
<tr>
<td>
<td>
<td>
<td>
<td>
<td><span title="Backup System Power Mode Group : Backup Power Mode Master Enabled
">IBkupPwrMdMstrEn</span>
</td>
<td>4</td>
<td>1</td>
<td>
<select name="value">
<option value="0">FALSE</option>
<option value="1">TRUE</option>
</select>
</td>
</td>
</td>
</td>
</td>
</td>
</tr>
<tr>
<td>
<td>
<td>
<td>
<td>
<td><span title="Backup System Power Mode Group : System Backup Power Mode
">IBkUpSysPwrMd</span>
</td>
<td>7</td>
<td>3</td>
<td>
<select name="value">
<option value="0">OFF</option>
<option value="1">ACC</option>
<option value="2">RUN</option>
<option value="3">PROPULSION</option>
<option value="4">START</option>
</select>
</td>
</td>
</td>
</td>
</td>
</td>
</tr>
</tr>
<tr class="expandable">
<td><strong>C8_LRRODP_Brst1_PCSM_MSG</strong>
</td>
<td>1896</td>
<td>8</td>
<td>true</td>
<td>
<input type="checkbox" name="1896" value="16.08" checked>
</td>
<tr>
<td>
<td>
<td>
<td>
<td>
<td><span title="Long Range Radar Object Detection and Processing Burst 1 Protected Counter Sync Message
">ILRRODP_Brst1_PCSM</span>
</td>
<td>0</td>
<td>64</td>
<td>
<input type="number" name="value" value="0" min="0.0" max="1.8446744073709552E19">
</td>
</td>
</td>
</td>
</td>
</td>
</tr>
</tr>
</table>
<br>
<input style="font-size:25px" type="submit" value="START">
</form>
<button style="font-size:25px" type="button" onclick="alert('Please simple use the browser inbuilt search funktion. (CTRL+F)!')">SEARCH</button>
</body>
</html>
答案 2 :(得分:0)
Yippi ......它有效。大!谢谢大家。
解决方案在这里:
<!DOCTYPE html>
<html>
<script src="http://code.jquery.com/jquery-2.2.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var show = true;
$('.expandable').click(function () {
$(this).nextAll('tr').each( function() {
if($(this).is('.expandable')) {
return false; }
$(this).toggle();
});
});
$('.expandable').nextAll('tr').each( function() {
if(!($(this).is('.expandable')))
$(this).hide();
});
$('#click_for_show_all').click(function() {
$('.expandable').nextAll('tr').each( function() {
if(!($(this).is('.expandable')))
$(this).show();
});
});
$('#click_for_hide_all').click(function() {
$('.expandable').nextAll('tr').each( function() {
if(!($(this).is('.expandable')))
$(this).hide();
});
});
});
</script>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Restbus for CAN based on AUTOSARr4.1</title>
</head>
<body>
<h2>RSS</h2>
<button id="click_for_show_all">expand all</button>
<button id="click_for_hide_all">collaps all</button>
<form action="/cgi-bin/check.cgi">
<table border="1">
...
...
...