вам нужно процитировать его, вырвав «
echo "<tr>\n
<td align='right'><b>Location</b></td>
<td><input name='student_location' type='text' size='25' style='font-weight: 700' value=\"$location\"></td>
</tr>";
Ваш код работает правильно, как он написан. Я думаю, что у вас случайно есть выходной код вашего календаря внутри вашей функции hashchange. Если вы переместите его на улицу, он должен работать так, как вы ожидаете. Кроме того, вы создаете свой календарь внутри элемента p
вместо элемента calendar
. код ниже показывает работающую версию
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
var calendar = document.querySelector('#calendar');
var date = new Date();
location.hash = date.getFullYear();
var p = document.querySelector('p');
p.innerHTML = location.hash;
for (dz = 0; dz < 12; dz++) {
calendar.innerHTML += '<a href="' + location.hash + '-' + String("0" + (dz + 1)).slice(-2) + '">' + months[dz] + '</a> ';
}
window.addEventListener('hashchange', function() {
p.innerHTML = location.hash;
});
<div id="calendar"></div>
<p></p>