2014-07-05 2 views
0

PHP에서 div로 생성 된 정보를로드하라는 요청을 보내고 있습니다. OnClick 함수가 있습니다. Ajax는 잘 응답하지만 HTML 클라이언트에서는 JavaScript 함수가 작동하지 않습니다.PHP에서 생성 된 JavaScript onClick 함수가 ajax 응답에서 작동하지 않습니다.

$iscId = $row['instructorSemesterCourseId']; 
    $year = $row['year']; 
    $startDate = $row['startDate']; 
    $endDate = $row['endDate']; 
    $courseCredit = $row['courseCredit']; 
    $pinned = $row['pinned']; 
    $semesterName = $row['semesterName']; 

    $date1 = date('F j, Y', strtotime($startDate)); 
    $date2 = date('F j, Y', strtotime($endDate)); 

    $div .= "<div id='SCid".$iscId."' class='schoolClass'> 
        <div class='schoolClassLeft'> 
        <div class='schoolCourseTitle' onClick='classSessionEnter('SCid".$iscId."'); style='width:100%'>".$semesterName." ".$year." | ".$date1." &ndash; ".$date2."</div> 
        </div> 
       </div>"; 
    echo('$div'); 

자바 스크립트와 jQuery를 작성 기능은 다음과 같습니다 : -이 기능으로하지 않습니다

function classSessionEnter(elm) { 
    alert('elm'); 
    $('#' + elm).css({"background": "#E7F9CE"}); 
    $('#' + elm).css({"position": "absolute"}); 
    $('#' + elm).css({"top": "0px"}); 
    $('#' + elm).css({"color": "#006600"}); 
} 

경고가 작동하지 않습니다

는 PHP로 작성된 아약스의 응답입니다 조금도. 왜?

+0

이 시도하십시오 : onClick = 'classSessionEnter (\'SCid ". $ iscId."\ ');' – ederpsampaio

+0

예 글로벌 공간에 있습니다. 함수의 변수에서 오류가 발생하는 것 같습니다. 함수에서 변수를 제거하면 함수에 입력됩니다. – Ahad

+0

Michael에게 감사드립니다. :) – Ahad

답변

1
$div .= "<div id='SCid".$iscId."' class='schoolClass'> 
    <div class='schoolClassLeft'> 
     <div class='schoolCourseTitle' onClick=\"classSessionEnter('SCid".$iscId."')\"; style='width:100%'>".$semesterName." ".$year." | ".$date1." &ndash; ".$date2."</div> 
    </div> 
</div>"; 

먼저 따옴표를 esacpe한다 「onclick을 = \ "」

+0

고마워요. 지금 당장 두 시간 동안 고생하고있어. – Ahad

2

교환이

$div .= "<div id='SCid".$iscId."' class='schoolClass'> 
       <div class='schoolClassLeft'> 
       <div class='schoolCourseTitle' onClick='classSessionEnter('SCid".$iscId."'); style='width:100%'>".$semesterName." ".$year." | ".$date1." &ndash; ".$date2."</div> 
       </div> 
      </div>"; 
echo('$div'); 

당신은 일이 몇 가지 작은 따옴표를 촉각 근해야

$div .= "<div id='SCid".$iscId."' class='schoolClass'> 
        <div class='schoolClassLeft'> 
        <div class='schoolCourseTitle' onClick='classSessionEnter(SCid".$iscId.");' style='width:100%'>".$semesterName." ".$year." | ".$date1." &ndash; ".$date2."</div> 
        </div> 
       </div>"; 
    echo($div); 
관련 문제