2017-05-07 11 views
-1

追加ボタンをクリックするたびにテーブルにボタンを作成しようとしています。ボタンに表示されているtdに問題があります。私のJSと関係していることを確かめてください。どんな助けもありがとう。 HTML:javascriptを使用してボタンを作成する

      <button class="btn btn-primary pull-right" onclick="myCreateFunction()"> 
     Add new 
    </button> 
          <table class="table table-striped" border="4" cellpadding="3" cellspacing="1" id="usertable"> 
           <tr> 
            <th>First Name</th> 
            <th>Last Name</th> 
            <th>Title</th> 
            <th>Supervisor</th> 
            <th>Holiday</th> 
            <th>Edit</th> 
            <th>Delete</th> 

           </tr> 
           <?php while ($rowemployeelist = mysql_fetch_array($employeelistresult)) { ?> 

           <tr> 
            <td> 
             <?php echo $rowemployeelist["first_name"] ?> 
            </td> 

            <td> 
             <?php echo $rowemployeelist ["last_name"] ?> 
            </td> 

            <td> 
             <?php echo $rowemployeelist ["title"]?> 
            </td> 
            <td> 
             <?php echo $rowemployeelist ["supervisor"]?> 
            </td> 
            <td> 
             <?php echo $rowemployeelist ["holiday"]?> 
            </td> 
            <td><button class="editbtn">Edit</button></td> 

            <td><a href="delete.php?id=' . $row['id'] . '">Delete</a></td> 

           </tr> 
           <?php } ?> 
          </table> 

JS:あなたの正確な要件について

function myCreateFunction() { 
    var table = document.getElementById("usertable"); 
    var row = table.insertRow(1); 
    var cell1 = row.insertCell(0); 
    var cell2 = row.insertCell(1); 
    var cell3 = row.insertCell(2); 
    var cell4 = row.insertCell(3); 
    var cell5 = row.insertCell(4); 
    var cell5 = row.insertCell(5); 
    var cell6 = row.insertCell(6); 

    cell1.innerHTML = ""; 
    cell2.innerHTML = ""; 
    cell3.innerHTML = ""; 
    cell4.innerHTML = ""; 
    var button = document.createElement("button") 
    button. innerHTML = "Do Something"; 
    var td = document. getElementsByTagName("td")[0]; 
    td.appendChild(button); 


} 

答えて

0

を、 - button.innerHTML 変更されたコードを使用する前に、この行を追加しますか?新しい行の5番目のセルですか?

私は、あなたは、単に直接

+0

正解、5番目のセルに追加したい –

+0

@LucasBrawdy自分の編集を見て、5番目のセルに子を直接追加することができます。 –

0

わかりません。しかし、どこにボタンを作成していますか? javascriptでは、ボタンを作成するにはvar button = document.createElement("button")が必要です。あなたはボタンをに追加したいんTDあなたのテーブルで

function myCreateFunction() { 
    var table = document.getElementById("usertable"); 
    var row = table.insertRow(1); 
    var cell1 = row.insertCell(0); 
    var cell2 = row.insertCell(1); 
    var cell3 = row.insertCell(2); 
    var cell4 = row.insertCell(3); 
    var cell5 = row.insertCell(4); 
    var cell5 = row.insertCell(5); 
    var cell6 = row.insertCell(6); 

    cell1.innerHTML = ""; 
    cell2.innerHTML = ""; 
    cell3.innerHTML = ""; 
    cell4.innerHTML = ""; 
    var button = document.createElement("button"); 
    button.innerHTML = "Do Something"; 
    var td = document. getElementsByTagName("td")[0]; 
    td.appendChild(button); 
} 
+0

私はこれを試してみてくださいWhenver cell5.appendChild(button)を使用して作成したばかりのセルの一つにボタンを追加することができ、あなたの代わりに別の方法としてdocument.findElementsByClassName

row.findElementsByClassNameを使用して、正しいTDを見つけたいと考えていますセルにボタンが追加されていない空白の行が表示される –

+0

https://jsfiddle.net/HectorBarbossa/pzw79pf1/を参照してください。これがあなたの必要条件でない場合は、私を修正してください。 –

関連する問題