javascript를 사용하여 저장된 값에서 HTML 양식을 채 웁니다.getElementById는 코드에서 null을 반환하지만 콘솔에서 작업합니다.
나는 나중에 실행하는 js 함수를 생성하기 위해 PHP 스크립트를 사용하기 때문에 확인란의 표를 확인해야합니다.
for($i = 0; $i < count($day_pos) - 1; $i++)
{
if ($day_pos[$i + 1] - $day_pos[$i] > 7)
{
if ($day_pos[$i + 1] - $day_pos[$i] > 8)
{
echo ("document.getElementById(\"".$rdv_days[$i * 2]."\").checked = true;");
echo ("\ndocument.getElementById(\"".$rdv_days[$i * 2 + 1]."\").checked = true;");
}
else if ($uf_hours[$day_pos[$i] + 5] == "sur")
{
echo ("document.getElementById(\"".$rdv_days[$i * 2]."\").checked = true;");
}
else
{
echo ("document.getElementById(\"".$rdv_days[$i * 2 + 1]."\").checked = true;");
}
}
echo("\n");
}
echo ("</script>");
이 기능을 사용하기 이전의 모든 기능은 정상적으로 작동합니다.
$ rdv_days는 확인란의 모든 ID가있는 배열입니다.
내가 양식 페이지를로드 할 때, 그것은 나에게 오류 발생 :
Uncaught TypeError: Cannot set property 'checked' of null
오류가 내 JS 기능에에서 getElementById를 수행 줄입니다.
하지만 크롬에서 디버거 콘솔을 사용하여 오류가 발생한 행을 중단하고 콘솔의 표현식을 평가하면 잘 작동합니다.
id 문자열에 숨겨진 문자가 포함되어 있지 않은지 확인했습니다.
정말 요소를 찾을 수없는 이유를 이해하지 못합니다. 시간에 대한
감사
편집 : 여기
여기에서 생성 된 코드 (단지 부분 웹 페이지가 4000 선입니다)document.getElementById("rdvMatLun3").checked = true;
document.getElementById("rdvApLun3").checked = true;
입니다 그리고 나중에 그와 관련된 테이블입니다 페이지에서
<td>
<input type='checkbox' id='rdvMatLun3' name='rdvMatLun3' value='1'/>RDV</td>
</td>
대부분의 경우 해당 요소는 JS 코드가 실행되는 시점에 존재하지 않습니다. 이 확실하지 – CBroe
하지만이 함수를 호출하는 방법'\ ndocument.getElementById' – karan3112
그게 여기 \의 n''후 공간을 제공하려고 : <몸의 온로드를 = "자바 스크립트 : initialisation_formulaire (0);"> – Nowahe