如何使 javascript 中单元格 table 的 href link 可点击?
How to make href link clickable for cell table in javascript?
我有一个 table 来显示我 API 的所有数据。我的代码是这样的:
<div class="table-responsive">
<h1>List Existing Node</h1>
<br/>
<table class="table table-bordered table-striped" id="node_table">
<tr>
<th>Node Id</th>
<th>Latitude</th>
<th>Longitude</th>
<th>Location</th>
</tr>
</table>
</div>
<script>
$(document).ready(function() {
$.getJSON("/api/node/", function(data){
var node_data = '';
$.each(data, function(key, value){
node_data += '<tr>';
node_data += '<td>'+value.node_id;
node_data += '<td>'+value.latitude;
node_data += '<td>'+value.longitude;
node_data += '<td>'+value.location;
node_data += '</tr>';
});
$('#node_table').append(node_data);
console.log(data);
});
});<script>
问题是我希望节点 ID 列中的所有单元格 table 都可以使用 href link 单击。
例如,当我单击节点 ID 列中的单元格(例如:节点 1 或节点 2 或节点 n)时,页面将重定向到 https://facebook.com
我该怎么做?
$('#node_table').on('click', 'tr', function() {
var href = $(this).data('href');
window.location.href = href;
})
$.getJSON("/api/node/", function(data){
var node_data = '';
$.each(data, function(key, value){
node_data += '<tr data-href="your link here">';
node_data += '<td>'+value.node_id;
node_data += '<td>'+value.latitude;
node_data += '<td>'+value.longitude;
node_data += '<td>'+value.location;
node_data += '</tr>';
});
$('#node_table').append(node_data);
console.log(data);
});
你可以这样做:
<div class="table-responsive">
<h1>List Existing Node</h1>
<br/>
<table class="table table-bordered table-striped" id="node_table">
<tr>
<th>Node Id</th>
<th>Latitude</th>
<th>Longitude</th>
<th>Location</th>
</tr>
</table>
</div>
<script>
$(document).ready(function() {
$.getJSON("/api/node/", function(data){
var node_data = '';
$.each(data, function(key, value){
node_data += '<tr>';
node_data += '<td> <a href="https://facebook.com/">'+value.node_id+'</a></td>';
node_data += '<td>'+value.latitude;
node_data += '<td>'+value.longitude;
node_data += '<td>'+value.location;
node_data += '</tr>';
});
$('#node_table').append(node_data);
console.log(data);
});
});<script>
修改ready
回调如下:
$.getJSON( '/api/node/', function(data){
var node_data = '';
var href = 'https://facebook.com';
$.each(data, function(key, value){
node_data += '<tr>';
node_data += '<td> <a href="' + href + '">' + value.node_id + '</a></td>';
node_data += '<td>' + value.latitude + '</td>';
node_data += '<td>' + value.longitude + '</td>';
node_data += '<td>' + value.location + '</td>';
node_data += '</tr>';
});
$('#node_table').append(node_data);
});
我有一个 table 来显示我 API 的所有数据。我的代码是这样的:
<div class="table-responsive">
<h1>List Existing Node</h1>
<br/>
<table class="table table-bordered table-striped" id="node_table">
<tr>
<th>Node Id</th>
<th>Latitude</th>
<th>Longitude</th>
<th>Location</th>
</tr>
</table>
</div>
<script>
$(document).ready(function() {
$.getJSON("/api/node/", function(data){
var node_data = '';
$.each(data, function(key, value){
node_data += '<tr>';
node_data += '<td>'+value.node_id;
node_data += '<td>'+value.latitude;
node_data += '<td>'+value.longitude;
node_data += '<td>'+value.location;
node_data += '</tr>';
});
$('#node_table').append(node_data);
console.log(data);
});
});<script>
问题是我希望节点 ID 列中的所有单元格 table 都可以使用 href link 单击。
例如,当我单击节点 ID 列中的单元格(例如:节点 1 或节点 2 或节点 n)时,页面将重定向到 https://facebook.com
我该怎么做?
$('#node_table').on('click', 'tr', function() {
var href = $(this).data('href');
window.location.href = href;
})
$.getJSON("/api/node/", function(data){
var node_data = '';
$.each(data, function(key, value){
node_data += '<tr data-href="your link here">';
node_data += '<td>'+value.node_id;
node_data += '<td>'+value.latitude;
node_data += '<td>'+value.longitude;
node_data += '<td>'+value.location;
node_data += '</tr>';
});
$('#node_table').append(node_data);
console.log(data);
});
你可以这样做:
<div class="table-responsive">
<h1>List Existing Node</h1>
<br/>
<table class="table table-bordered table-striped" id="node_table">
<tr>
<th>Node Id</th>
<th>Latitude</th>
<th>Longitude</th>
<th>Location</th>
</tr>
</table>
</div>
<script>
$(document).ready(function() {
$.getJSON("/api/node/", function(data){
var node_data = '';
$.each(data, function(key, value){
node_data += '<tr>';
node_data += '<td> <a href="https://facebook.com/">'+value.node_id+'</a></td>';
node_data += '<td>'+value.latitude;
node_data += '<td>'+value.longitude;
node_data += '<td>'+value.location;
node_data += '</tr>';
});
$('#node_table').append(node_data);
console.log(data);
});
});<script>
修改ready
回调如下:
$.getJSON( '/api/node/', function(data){
var node_data = '';
var href = 'https://facebook.com';
$.each(data, function(key, value){
node_data += '<tr>';
node_data += '<td> <a href="' + href + '">' + value.node_id + '</a></td>';
node_data += '<td>' + value.latitude + '</td>';
node_data += '<td>' + value.longitude + '</td>';
node_data += '<td>' + value.location + '</td>';
node_data += '</tr>';
});
$('#node_table').append(node_data);
});