Obțineți valoare de conținut dintr-o celulă de tabelă html și faceți-o să apară în caseta de text folosind javascript

Am o problemă pentru a prelua o valoare dintr-o celulă a unei tabele HTML care este scrollabilă. Am revizuit unele coduri Javascript dar nu pare să funcționeze. Te rog ajută-mă, sunt destul de nou pentru Javascript. Acesta este urmatorul meu cod:

Javascript

var rowIndex = 0;
var cellIndex = 0;
var nTable = "";
var nRows = 0;
var nCells = 0;

function showCoords(r,c)
{
    rowIndex = r;
    cellIndex = c;
    if(r!=0 && nTable.rows[r].cells[c].tagName != "th")
    {
var selectedValue = nTable.rows[r].cells[0].innerHTML;
        document.getElementById('celldata1').value=selectedValue;
var selectedValue = nTable.rows[r].cells[1].innerHTML;
        document.getElementById('celldata2').value=selectedValue;
var selectedValue = nTable.rows[r].cells[2].innerHTML;
        document.getElementById('celldata3').value=selectedValue;
    }
}

function getCoords(currCell)
{
    for (i=0; i

Nu sunt sigur dacă codurile JavaScript de mai sus devin greșite, fie în sintaxa, fie în logica lor, dar mă bucur dacă cineva mă ajută să le indice.

Cod HTML: -

cap

    
        <meta http-equiv="content-type" content="text/html;charset=utf-8" />
        <title>My Content</title>
        <link rel="stylesheet" text="css/text" href="mycss.css" title=""></link> 
        <script type ="text/Javascript" src="test.js"></script>     
    

partea corpului 1

Aceasta este partea în care vreau ca valorile să apară în fiecare casetă text în consecință din fiecare celulă de tabel.

    <body>

           <table border="0">
                <tbody>

                    <tr>
                        <td>Content 1:</td>
                        <td><input id="celldata1" type="text" name="content1" value="" /></td>
                    </tr>

                    <tr>
                        <td>Content 2:</td>
                        <td><input id="celldata2" type="text" name="content2" value="" /></td>
                    </tr>

                    <tr>
                        <td>Content 3:</td>
                        <td><input id="celldata3" type="text" name="content3" value="" /></td>
                    </tr>

                </tbody>
            </table>

partea 2 a corpului

Acesta este tabelul.

            <table border="1" id="tableone">
                
                    <tr>
                        <th>Item</th>
                        <th>Content 1</th>
                        <th>Content 2</th>
                        <th>Content 3</th>

                    </tr>
                

                <tbody> 
                    <%! int i;%>

                    <%for(int i=0; i<50; i++){%>

                        <tr>
                        <td><%=i+1%></td>
                        <td></td>
                        <td></td>
                        <td>
            </tbody>
            </table>
        </div>

Thanks by the way and sorry if my English is not good :)

0
Ce se întâmplă exact când faceți clic pe o celulă? Și ce aștepți să se întâmple?
adăugat autor Nick, sursa

1 răspunsuri

Eu folosesc jQuery pentru asta:

// Iterate throught rows of table:
jQuery("table").find("tr").each( function() {

    var currentRow = jQuery(this);

   //Iterate throught cell in current row: 
    currentRow.find("td").each(function() {

        var currentCell = jQuery(this);
       //Do what you want with cell
    });
});
0
adăugat
JavaScript, România - Moldova
JavaScript, România - Moldova
328 participanți

Comunitatea Română JavaScript: github.com/js-ro Pentru confort, opriți notificările. Parteneri: @node_ro, @php_ro, @python_ro, @seo_ro, @RomaniaGroup, @ai_ro, @Grupuri_IT Offtop: @holywars_ro Joburi: @js_jobs_ro Sponsored with ❤️ by ciupacabra.com