ยกตัวอย่างโครงการก่อนหน้า: เมื่อเพิ่มนักเรียนไม่มีข้อมูลชั้นเรียน จำเป็นต้องข้ามไปที่หน้าจอแสดงผลคลาสโดยอัตโนมัติ
คำถาม: นักเรียนชั้นเรียนและข้อมูลอื่น ๆ ถูกวางไว้ใน JSP ใน IFRAME
สารละลาย:
ค้นหาการจัดการคลาส <a> แท็กของแบบฟอร์มหลักโดย ID และคลิก
การคัดลอกรหัสมีดังนี้:
$ (window.parent.document) .find ("#folder_12") คลิก ();
ต่อมาแถบเมนูถูกเปลี่ยนเป็นไดนามิกและรหัสเมนูนั้นเป็นแบบไดนามิกตามธรรมชาติ
สิ่งที่คุณต้องการคือการได้รับ <a> ผ่าน URL และคลิก
การคัดลอกรหัสมีดังนี้:
<a id = "folder_14" onclick = "removetopmenucss (); switchfolder (this.id); changecontent ('classmanager/classlist.do', สิ่งนี้); เป็นโมฆะ (0); "target =" เมนเฟรม "> การจัดการคลาส </a>
สิ่งที่คุณต้องการได้รับคือการเปลี่ยนแปลง ('พารามิเตอร์ URL') ของวิธี onclick
ดูรหัสโดยตรง:
การคัดลอกรหัสมีดังนี้:
//console.info ($ (window.parent.document) .find ("a"));
$ (window.parent.document) .find ("#outfolder a"). แต่ละ (ฟังก์ชั่น (ดัชนี, domele) {
// var s = $ (domele) .attr ("onclick")+"";
// var start = s.indexof ('' classManager/classlist.do ');
var str = domele.attributes.onclick.value; // ใช้ js เพื่อรับค่าแอตทริบิวต์ onclick และค้นหา URL
var start = str.indexof ('' classManager/classlist.do ');
if (start> 0) {
$ (domele) .click ();
-
-
สรุป: ปรากฎว่าคุณใช้ jQuery เพื่อค้นหาวิธีการรับแอตทริบิวต์ onclick ใช้ดัชนีของรายงานข้อผิดพลาดเพิ่มพื้นที่ "" เพื่อแปลงเป็นสตริง