Я новичок в этом деле для веб-программирования, и у меня возникают проблемы с событием onclick. Я даже не знаю, лучше ли использовать "onclick()", но он работает до сих пор для меня.
В этот момент у меня есть страница с div, в которую я загружаю другую страницу. Этот контент изменяется в зависимости от изменения хеша, когда я выбираю параметры на панели инструментов, используя этот кусок js
function loadcontent(toload){
$('#browsediv').load("content/addimagecontent.php?"+toload);
}
Каждая функция js вызывается с главной страницы, а не с одной.
Теперь моя проблема заключается в том, что в загруженном контенте у меня есть несколько страниц результатов, и у меня есть div со словом Next, напечатанным на нем, и событие onclick, которое должно заставить страницу изменить свой атрибут страницы:
echo "<div onClick='loadcontent(\"page=".$nextpage."\")'>Next</div>";
У меня также есть то же самое, чтобы привести вас к предыдущей странице.
Как только я перехожу на страницу, я вижу все так, как должен, но если я нажму на "Далее" или "Предыдущий", он ничего не сделает в первый раз. В любое последующее время, когда я нажимаю на любое из них, он отлично работает, даже если первое, что я нажимаю, следующее, а затем нажмите "Предыдущее" или "наоборот".
Я смотрю вокруг, но никто, кажется, не ответил ни на что, что приспосабливается к моей проблеме, если у кого-то есть, пожалуйста, простите меня, поскольку английский не мой родной язык, и я иногда не знаю, как лучше искать что-то, Спасибо за прочтение :)
Вместо добавления onclick добавьте атрибут id. Затем с помощью jquery вы можете сделать что-то вроде этого:
<div id="yourDiv">Next</div>
$("#yourDiv").click(function() {
loadcontent(toload)
})
Я не совсем уверен, что это "законно", но вы можете добавить переменную $nextPage
в качестве атрибута.
<div id="yourDiv" data-page="<?php echo $nextPage;?>">Next</div>
Затем вы будете использовать следующее
$("#yourDiv").click(function() {
var page = $(this).attr('data-page');
loadcontent(page);
})
data-page
будет действительной, затем получите ее, используя: var page = $(this).data('page');
или да, вы также можете использовать: $(this).attr('data-page');
, Тем не менее, я не уверен, как это решит проблему ОП