私は少し問題があります... PHPコードでは、行の右側のボタンをクリックしてHTMLテーブルに行を追加することができます。 ボタンが表示されている行の下に新しい行が表示されます。それをするには、私は行のポジションを取得する必要がありますが、私はどのようにわからない。Javascriptで行位置を取得するにはどうすればよいですか?
私はこの試みた:あなたはそれで私を助けてくださいすることができ
function deleteRow(rowNumber) {
document.getElementById("Angebotsformular").deleteRow(rowNumber);
}
function addRow(rowNumber) {
var table = document.getElementById("Angebotsformular");
var row = table.insertRow(rowNumber); //THIS IS THE VALUE I NEED TO FIND
var cell1 = row.insertCell(0);
var cell2 = row.insertCell(1);
var cell3 = row.insertCell(2);
var cell4 = row.insertCell(3);
var posnr = document.createElement("input");
var posorder = document.createElement("input");
var unit = document.createElement("input");
posnr.type = "text";
posnr.name = "position";
posnr.size = 6;
posorder.type = "text";
posorder.name = "order";
posorder.size = 6;
unit.type = "text";
unit.name = "unit";
unit.size = 6;
cell1.appendChild(posnr);
cell2.appendChild(posorder);
cell3.appendChild(unit);
cell4.innerHTML('<span onclick="hinzufuegen();">Add</span><span onclick="loeschen();">Remove</span>');
}
<tr>
<td><input type="text" size="6" id="position"></td>
<td><input type="text" size="6" id="order"></td>
<td><input type="text" size="6" id="unit"></td>
<td><span onclick="addRow(this);">Add</span><span onclick="deleteRow(this);">Remove</span></td>
</tr>
を?
もう1つの問題は、cell4の内容が表示されないということです。 ありがとうございました。
ボタンへの参照を使用して、行(親の親)を見つけて、その行の後に新しい行を挿入することができます。 'button.parent.parent.insertAdjacentHTML( 'afterend'、newRowHtmlString)'のようなものです。 "ボタン"は、あなたの "addRow"関数(ボタンへの参照)で "rowNumber"と呼ばれるもので、新しい行のHTMLは "newRowHtmlString"です。 – JimL
'innerHTML'はメソッドではなくプロパティです。 '='を使用して値を設定すると、 'cell4'の値を表示するのに役立ちます。 – Nicko
これは良い解決策のように見えますが、私はそれを働かせません。このように使う必要がありますか? var row = table.arg.parent.parent.insertAdjacentHTML( 'afterend'、newRowHtmlString); – Niclas