#javascript #php #html #button
#javascript #php #HTML #кнопка
Вопрос:
У меня есть очень простая таблица, в которой я получаю информацию о доходах для некоторых людей. Таблица правильно извлекает данные, а ссылка на файл сохраняется в переменной, например:
$file = "/".$row[9];
Где $row берется из цикла while. У меня есть кнопка внутри таблицы:
<button id = "openbtn" class = 'actionbtn' onClick = "window.open('<?php echo $file;?>')" title = 'Open Attachment'><i class='fa fa-file'></i></button>
Если я создам новую переменную, в которой я вручную установлю ссылку:
$file2 = '/folder1/folder2/somename.pdf';
тогда кнопка откроется нормально. Но это не будет работать с $file , я получаю Uncaught SyntaxError: недопустимый или неожиданный токен.
Есть какие-нибудь зацепки?
Комментарии:
1. Посмотрите, что генерируется в браузере …. осмотрите элемент, посмотрите, что выдает php-код.
2. Я сделал, на самом деле $file2 создается на основе echo $file one; есть ли вероятность, что есть скрытые символы, которые я не вижу, и javascript улавливает? в любом случае, чтобы «очистить» строку/
3. Что это? скопируйте и вставьте то, что сгенерировано….
4. /scans/migrated/4099_20046_INCOME_23594.pdf
5. Я даже пытался обрезать строку и все равно не работает
Ответ №1:
foreach($row as $myfile){
echo '<button
id="openbtn"
class="actionbtn"
title="Open Attachment"
onclick="window.open('."'$myfile'".');"
>
<i class='fa fa-file'></i>
</button>';
}
попробуйте этот цикл
Комментарии:
1. У меня было » , но не «; и нет, все еще не работает
Ответ №2:
Комбинация для trim ($file) и изменение «» сделали это:
<button id = "openbtn" class = 'actionbtn' onClick = 'window.open(<?php echo '"'.$file .'"';?>);' title = 'Open Attachment'><i class='fa fa-file'></i></button>