경주가로드 될 때 선택 옵션을 업데이트하는 사이트를 만들었습니다. 사용자가 경주를 선택하면 일련의 선택 상자가 표시됩니다. 주자가 이전에 장소에 배정 된 경우 경주가로드 된 후 주자가로드됩니다. 이것은 (Firefox, Chrome, Safari) 모든 웹 브라우저에서 정상적으로 작동하지만 iPad에서 주로 작동하지는 않습니다. 선택 옵션 Do not Update iPad에서 jQuery를 사용하여 업데이트
이
는 장소 업데이트 나는 부분에 대해 가지고있는 자바 스크립트 코드입니다 : 나는 비의 jQuery 방법을$.post('getRunnerPlacements.php', {gender: race}, function(data) {
var runners = data.split('*RUNNER*');
var savedRunners = runners.length-1;
for (var i=0;i<savedRunners;i++)
{
var tempRunner = runners[i].split('*INFO*');
var place = tempRunner[2]-1;
var dd = $('#school'+place);
dd.val(tempRunner[3]);
loadRunners(place,race,tempRunner[0]);
}
});
을 ...
function loadRunners(i,gender,place)
{
var school = $('#school'+i+' option:selected').val();
$.post('getRunners.php', {school:school,gender:gender}, function(data) {
var runners = data.split('*RUNNER*');
runners.pop();
$.each(runners, function(key, value) {
var temp = value.split('*INFO*');
$('#runner'+i)
.append($('<option>', { value : temp[0] })
.text(temp[1]));
});
if (place != 'false')
$('#runner'+(i)).val(place);
});
}
시도했지만, 모든 것을 나는했습니다 done은 iPad에서 같은 문제를 발생시킵니다. 배치 된 주자를위한 학교는 첫 번째 선택 목록에로드되지 않으므로 러너 선택 목록이 비어있게됩니다. 나는 값을 테스트하라는 경고를 할 때 때때로 작동하도록했습니다. 그러나 이것은 매번 작동하지 않습니다. 또한 setTimeout을 사용하여 loadRunners 함수의 실행을 지연 시키려고했지만 그 역시 도움이되지 않았습니다. 어떤 아이디어라도 높이 평가할 수 있습니다. 라이브 사이트는 invite.ymsrunning.com/results.php에서 볼 수 있습니다. "결과 입력"을 클릭 한 다음 결과를 보거나 설정할 경주를 선택하십시오.
PHP 스크립트에서 반환 한 데이터를 공유해주십시오. 일부 HTML이 도움이 될 수도 있기 때문에 더 나은 점은 [jsfiddle.net] (http://jsfiddle.net/)에서 코드의 데모를 만드는 것입니다. – Mottie