2015-06-22 3 views
0

При нажатии на кнопку «Печать» Javascript бросает синтаксическую ошибку в firebug с указанием «Ожидаемое выражение, получило конец скрипта». Однако это прямой бит php/javascript кода, поэтому я не понимаю проблему синтаксиса. Эта кнопка не адресуется какой-либо функцией JQuery, и я не вижу противоречивых одиночных/двойных кавычек ???Ошибка: ожидаемое выражение, начало конца скрипта

enter image description here

echo "<div style='height:550px; width:900px;' id='btarget'><div id='tcontrol'>"; 

if ($var1v!=="Paid" && $_SESSION['tickstatus']!=="Closed,Complete") {echo "<input name='reschtick' id='reschtick' type='button' value='RESCHEDULE' /><input name='closetick' id='closetick' type='button' value='CLOSE TICKET' />";} 
echo $varv1; 
echo '<input type="button" value="PRINT TICKET" onclick="http://www.thetargetdomain.com/ops/includes/pdfconveview.php?dispinv='.$_GET[vtick].'&action=eview" />'; 
echo "</div> 

Если я рассматриваю это в источнике я получаю:

<input type="button" onclick="http://www.thetargetdomain.com/ops/includes/pdfconveview.php?dispinv=06151205&amp;action=eview" value="PRINT TICKET"> 

, если я вхожу в URL SRC, как показано выше, непосредственно в браузер он работает нормально. У него просто есть проблема с запуском нажатия кнопки.

+3

Я не думаю, что вы понимаете, что делает onclick –

+0

Назначение URL-адреса атрибуту onclick не работает. Возможно, вы хотите использовать тег '' и назначить URL-адрес атрибуту 'href'? Атрибут onclick ожидает код Javascript. – jfriend00

+0

@ АndreiNemes нет, я понимаю, что делает onclick, просто получил крест в коде и забыл очевидное. window.location, оставленный вне, был просто надзором с моей стороны, и этого не должно было случиться. – DMSJax

ответ

2

Это не имеет никакого смысла. Вы назначаете URL-адрес для onclick, это неправильно.

Если вы хотите перейти на страницу, вам нужно установить расположение окна или обернуть кнопку в якорь.

onclick="window.location.href='http://www.example.com';" 

Использование встроенных событий - это плохая практика.

+0

Ну ... хорошо, назовите меня временно глупым для пропущенного очевидного. Слишком много строк кода сегодня и просто упустил что-то, чего я не должен был. Спасибо, что указал на очевидное. - Использование встроенного заключается в том, чтобы исправить краткосрочную проблему в старом кодексе, в то время как строится целый новый бэкэнд ... программирование на бандаже – DMSJax

+0

@DMSJax Нигде он не назвал вас глупым. Я думаю, вы относитесь к этому слишком лично. Если вам не нужна его помощь, вы не должны были размещать здесь в первую очередь. Этот сайт работает, потому что мы можем прямо решить проблему и пропустить сахарное покрытие. –

+0

@AndreiNemes Ваше непонимание моего заявления. Это была самокритика. Не обвиняют его. – DMSJax

0

Я думаю, что вы ищете что-то вроде этого:

<form action="http://google.com"> 
    <input type="submit" value="Google"> 
</form> 
0

В этой ситуации, то лучше использовать анкерный тег.

onclick Используется для запуска JavaScript при нажатии этого элемента. Поскольку вы только перенаправляете страницу, проще использовать привязку.

<a href="http://www.thetargetdomain.com/ops/includes/pdfconveview.php?dispinv=<?=$_GET[vtick]?>&action=eview" value="PRINT TICKET" /><?=$varv1?></a> 

Если по какой-то причине, это абсолютно необходимо, чтобы быть входом, то вы должны использовать window.location:

<input type="button" value="PRINT TICKET" onclick="window.location.href='http://www.thetargetdomain.com/ops/includes/pdfconveview.php?dispinv=<?=$_GET[vtick]?>&action=eview';" /> 

Вот ссылка на документацию MDN для window.location: https://developer.mozilla.org/en-US/docs/Web/API/Window/location