Я пытаюсь получить массив массивов из таблицы ввода текста html, но когда я смотрю на массив массивов, я возвращаюсь, заполняя его пустыми строками, хотя должно быть много текста по умолчанию, и я заполнил еще несколько ячеек. Здесь вызывается javascript, за которым следует php, используемый для генерации таблицы. Когда я нажимаю кнопку, я получаюJavascript массив массивов из таблицы ввода html
«,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,»
<script type="text/javascript">
$(document).ready(function(){
$("#testButton2").click(function(){
var tableInfo=document.getElementById("myTable");
console.log(tableInfo);
var tableArray= [];
for (var i = 1; i < tableInfo.rows.length; i++) {
//var row = tableInfo.rows[i];
var rowArray = [];
for (var j = 0; j < tableInfo.rows[i].length; j++) {
rowArray.push(tableInfo.rows[i].cells[j].innerHtml);
}
tableArray.push(rowArray);
}
alert(tableArray.toString());
});
});
</script>
<?php
$table = "info.csv";
$id = "myTable";
$count = 0;
echo "<table id=".$id.">\n\n";
$f = fopen($table, "r");
while (($line = fgetcsv($f)) !== false) {
echo "<tr>";
foreach ($line as $cell) {
if ($count != 0) {
echo "<td><input value=" . htmlspecialchars($cell) . "></input></td>";
} else {
echo "<td>" . htmlspecialchars($cell) . "</td>";
}
}
echo "</tr>\n";
$count += 1;
}
fclose($f); echo "\n</table>";
?>
Вы пробовали 'file_get_content()' versus 'fopen()'? Можете ли вы эхо просто «$ table» и посмотреть результаты чтения? – Twisty
В JS есть '.innerHtml', который не существует, вместо этого используйте' .innerHTML'. – Teemu
Извините, ваш вопрос касается JavaScript, а не кода PHP правильно? – Twisty