我正在发送一个ajax请求,以从PHP加载在div中构建的一些信息。那里有一个onClick函数。Ajax响应良好,但JavaScript函数在HTML客户端中不起作用。
这是用PHP编写的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." – ".$date2."</div>
</div>
</div>";
echo('$div');
用JavaScript和jQuery编写的函数是:
function classSessionEnter(elm) {
alert('elm');
$('#' + elm).css({"background": "#E7F9CE"});
$('#' + elm).css({"position": "absolute"});
$('#' + elm).css({"top": "0px"});
$('#' + elm).css({"color": "#006600"});
}
警报不起作用——它根本没有进入功能。为什么?
更换此
$div .= "<div id='SCid".$iscId."' class='schoolClass'>
<div class='schoolClassLeft'>
<div class='schoolCourseTitle' onClick='classSessionEnter('SCid".$iscId."'); style='width:100%'>".$semesterName." ".$year." | ".$date1." – ".$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." – ".$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." – ".$date2."</div>
</div>
</div>";
您应该先esacpe引号「onClick=''」