У меня есть панель навигации, созданная из таблицы MySQL. Я хочу щелкнуть ссылку и изменить содержимое только двух div на странице. Однако я не могу понять, как правильно написать код jQuery.
Я попытался включить один класс для всех ссылок и использовать
$(".class").click(function(){
//the code to change the div
}
Но похоже, что это не работает.
Код PHP
<?php
require(__DIR__.'/dbconf.php');
require(__DIR__.'/db_functions.php');
$db_con = mysqli_connect($host, $username, $pass, $dbname);
$column = "playerName";
$table = "Players";
$condition = "";
$key = "";
$query = selectData($db_con, $column, $table, $condition, $key);
while($row=mysqli_fetch_assoc($query)){
$res[] = $row[$column];
echo "<a href = # class = 'player' name ='".$row[$column]."'>".$row[$column]."</a>";
}
mysqli_close($db_con);
?>
Код JQuery
$(".player").click(function(){
var player = $(this).val()
var dataString = 'playerName'+ player;
$.ajax({
type: "POST",
url: "coin_amount.php",
data: dataString,
cache: false,
success: function(postresult){
$(".coins").html(postresult);}
});
return false;
});
Похоже, это должно сработать. Что при нажатии любой ссылки с классом «player» она должна изменить значение переменной player и вызвать файл coin_amount.php. Но это не так. Что я не понимаю? Я знаю, что функция ajax верна, потому что я вызываю эту функцию при загрузке страницы, и она работает. Так что это должно быть что-то в функции щелчка.
Подожди. Мой код PHP был усечен. Я пытаюсь это исправить.
В порядке. Я исправил это. Класс проигрывателя добавляется через скрипт PHP, но не создается динамически.
Что такое вывод html?
Включить отчет об ошибках mysqli.
У вашего оператора echo нет действительного HTML-кода. Удалите пробелы и добавьте кавычки для тега href.
Я не уверен, как поделиться своим html-выводом. Я внес предложенные ниже изменения и исправил оператор echo, но он по-прежнему ничего не делает.
В порядке. У меня гораздо большая проблема, чем я думал. И я даже не знаю, как обратиться за помощью. По какой-то причине эта функция извлекает данные из другой функции, хотя я изменил имена переменных. Есть ли где-нибудь, где я могу опубликовать весь свой код и попросить о помощи? Я не хочу отнимать ваше время, так как это, кажется, с моей стороны является основным недоразумением.
Это может быть хорошим началом: замените var player = $ (this) .val () на var player = $ (this) .attr ('name')
Спасибо. Потребовалось сочетание множества различных предложений (поэтому я не знаю, как отметить одно из них как правильное). Но я понял.






Если проигрыватель создается после загрузки DOM, вам нужно будет прикрепить прослушиватель кликов к документу, например:
$(document).on('click', '.player', () => {
// execution code here
}
ДОБАВИТЬ его в теге <script></script> в заголовке страницы после загрузки библиотеки jquery.
Код JQuery:
$(document).ready(function() {
$("#cercaButton").click(function () {
$(".divClass").load("./action/loadDdtGiornalieri.php");
});
});
В вашем случае добавьте идентификатор в тег ссылки, сгенерированный из кода PHP, который распечатывает меню.
Я предлагаю вам добавить разные идентификаторы для каждой ссылки меню, чтобы загружать разный контент. Из php вам нужно сгенерировать строку как
<a id = "cercaButton">Cerca</a>
Это полный пример загрузки, включая также публикацию параметров на веб-странице php. Если вам нужно публиковать данные на странице, загруженной из jquery, самый простой код:
$(document).ready(function() {
$("#cercaButton").click(function () {
$(".divClass").load("./action/loadDdtGiornalieri.php", {
dateIn: $("#dateIn").val(),
tipoInterrogazione: $("#tipoInterrogazione").val()
});
});
});
Мне не нужна пуговица. Я хочу иметь возможность щелкнуть имя игрока и изменить вывод внутри div. И у меня в файле есть document.ready (функция).
Спасибо. Но я думаю, что у меня есть более серьезная проблема, чем я думал, и я не знаю, как обратиться за помощью. Ой.
@KristenMiller Хорошо подумайте, как его запросить. Существуют способы требовать все: вчера, чтобы сформулировать свой вопрос, я написал пост в течение 3 часов. Если вы думаете, что это правильный ответ на этот вопрос, пожалуйста ;-)
.playerсоздается динамически с помощью ajax?