1.1. каждые 10 секунд отправляют запросы серверу: завершил ли ход соперник?где это хранится и как определяется? В базе? В мемкеше? Редис? Сессия?
2. Сервер каждые 10 секунд увеличивает у себя игровые такты на 1.Зачем? Есть время начала, есть время завершения, в любой момент можно запросить текущий такт, вычислив разницу от старта до текущего момента, что у вас там сервер считает и зачем?
3. Если клиент игрок получает сообщение о том, что очередь хода перешла к нему, то клиент обновляет и показывает данные о ходе в следующем игровом такте.не очень понятно как у вас сделано, просто когда на сервере состояние хода сменилось, при следующем запросе (который раз в 10 секунд) логика фронтенда должна поменяться на "вы ходите".
через ajax отправляется на сервер, как это можно проверить-то?не понимаю вопроса, вы же получаете на сервере данные из поля, их можно проверить на условия, например что они больше или меньше возможной ставки, или там вообще буквы а не цифры.
$('ul.radio_list .radio').on('change', function () {
var hr = $(this).data("radio"); // в jq есть готовый метод для data аттрибутов
$("#btn-pop").attr('href', hr); // это же линк для попапа? тогда так и должно быть
});