Hãy để tôi giải thích chi tiết câu hỏi. Tôi đang sử dụng PHP và thông minh. Tôi nhận được giá trị op=back
từ chuỗi truy vấn. Nhưng điều này sẽ không xảy ra mỗi khi tập tin PHP chạy, do đó, khi op=back
là giá trị tôi đã tạo ra sự kiện nhấp chuột trên một liên kết cụ thể. PHP đoạn mã tập tin của tôi được đưa ra dưới đây:Làm cách nào để thực thi mã jQuery tùy thuộc vào giá trị nhận được thông qua chuỗi truy vấn?
<?php
include_once("includes/teacher-application-header.php");
prepare_request();
$request = empty($_GET) ? $_POST : $_GET ;
$op = $request['op'];
$objTeachClassSub = new TeacherClassesSubjects();
global $teacher_profile_from_session;
$teacher_id = $teacher_profile_from_session['TEACHER_ID'];
$teacher_classes_subjects = $objTeachClassSub->GetClassSubjectMappingsbyTeacherId($teacher_id);
$smarty->assign('teacher_classes_subjects', $teacher_classes_subjects);
$smarty->assign("op",$op);
$smarty->display("teacher-details.tpl");
?>
Bây giờ đoạn mã từ file smarty là như sau:
{literal}
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
</script>
{/literal}
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" >
<tr>
<td align="left" valign="top">
<h3>Teacher Details</h3>
</td>
</tr>
</table>
<table width="99%" border="0" cellpadding="0" cellspacing="0" class="manage_box" >
<tr>
<td>
<table cellpadding="0" cellspacing="0" border="1" width="100%">
<tr>
<td width="25%">
{if $teacher_classes_subjects}
{foreach from=$teacher_classes_subjects item="classes_subjects"}
<b><a href="#" id="{$classes_subjects.class_id}">{$classes_subjects.class_name}</a></b><br />
{if $classes_subjects.class_subjects}
<div id="class_subjects_{$classes_subjects.class_id}">
{foreach from=$classes_subjects.class_subjects item="class_subjects"}
<i><a id ="back" href="chapter_details.php?class_id={$classes_subjects.class_id}&cs_map_id={$class_subjects.cs_map_id}">{$class_subjects.subject_name}</a></i><br />
{/foreach}
</div>
<br />
{/if}
{/foreach}
{/if}
</td>
<td width="75%">
{if $chapter_details}
<ul>
{foreach from=$chapter_details item=chapter}
<li><a href="chapter_details.php?op=get_chapter_theory&chapter_id={$chapter.chapter_id}&class_id={$class_id}&cs_map_id={$cs_map_id}&chapter_title={$chapter.chapter_title}">{$chapter.chapter_title}</a></li>
{/foreach}
</ul>
{/if}
{include file=$file_to_show}
</td> aly what is
</tr>
</table>
</td>
<td align="left" id="subject_container" valign="top">
</td>
<td align="left" id="chapter_container" valign="top">
</td>
</tr>
</table>
Bây giờ những gì tôi muốn đạt được là viết một mã jQuery trong thông minh trên tệp mẫu sẽ thực thi nếu giá trị op được trả về (ví dụ: {op==back}
). Trên thực tế những gì đang mong đợi là khi sự kiện op=back
nhấp chuột sẽ nhận được nổ súng vào liên kết sau:
<a id ="back" href="chapter_details.php?class_id={$classes_subjects.class_id}&cs_map_id={$class_subjects.cs_map_id}">{$class_subjects.subject_name}</a>
bất cứ ai có thể giải thích cho tôi làm thế nào để đạt được chức năng này? Cảm ơn trước.
Tôi muốn kích hoạt sự kiện nhấp chuột chỉ trên một liên kết, tôi không muốn chuyển hướng đến bất kỳ URL nào. Khi tôi nhấp vào một liên kết, một vài giá trị sẽ chuyển qua dạng chuỗi truy vấn khi nhấp vào liên kết.Vì vậy, giải pháp của bạn có vẻ hơi không phù hợp với vấn đề này. Bạn có bất kỳ ý tưởng tốt hơn khác hơn này? – PHPLover