我有HTML表,需要在其中选择一行并将其第一个单元格ID发送给按钮,按钮的onclick将所选值发送给Javascript函数。我该如何实现?

test.html :

<table id="table">
        <tr>
            <td>1 Ferrari F138</td>
            <td>1 000€</td>
            <td>1 200€</td>

        </tr>
        <tr>
            <td>2 Ferrari F138</td>
            <td>1 000€</td>
            <td>1 200€</td>

        </tr>
        <tr>
            <td>3 Ferrari F138</td>
            <td>1 000€</td>
            <td>1 200€</td>

        </tr>
    </table>
    <input type="button" id="tst" value="OK" onclick="fnselect()" />

test.js :
var table = document.getElementById('table'),
    selected = table.getElementsByClassName('selected');
table.onclick = highlight;
function highlight(e) {
    if (selected[0]) selected[0].className = '';
    e.target.parentNode.className = 'selected';
}
function fnselect(){
var $row=$(this).parent().find('td');
    var clickeedID=$row.eq(0).text();
    alert(clickeedID);
}

test.css :
td {border: 1px #DDD solid; padding: 5px; cursor: pointer;}

.selected {
    background-color: brown;
    color: #FFF;
}

这是我的问题的 fiddle JSFIDDLE

我需要将所选行的第一个单元格值发送到javascript函数。但是,当用户选择一行并单击“确定”按钮时,我应该将值发送给函数。这该怎么做?

最佳答案

$("#table tr").click(function(){
   $(this).addClass('selected').siblings().removeClass('selected');
   var value=$(this).find('td:first').html();
   alert(value);
});

$('.ok').on('click', function(e){
    alert($("#table tr.selected td:first").html());
});

演示:

http://jsfiddle.net/65JPw/2/

10-05 20:53
查看更多