1

Oracle plsql プロシージャに JavaScript を追加しました。plsql の経験はありますが、JavaScript の経験はありません。

コードを別のplsqlパッケージhtp.pにラップする必要があります

HTP.P ('<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>');
 HTP.P (
      ' <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">');
   HTP.P ('<html xmlns="http://www.w3.org/1999/xhtml">');
   HTP.P ('<head>');
   HTP.P (
      '<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />');
   HTP.P ('<title>Untitled Document</title>');
   HTP.P (
      '<script type="text/javascript" src="../lib/jquery-1.8.1.min.js"></script>');
   HTP.P ('<script type="text/javascript">');
   HTP.P ('$(document).ready(function() {' );
   HTP.P ('$(input[name="sel_crn"]).hide()');
   HTP.P ('$(document).ready(function() {');
  --- HTP.P ('('input[name="sel_crn"]' ).hide();'');

    HTP.P('  $("span.btnToggle").click(function(){');
   HTP.P('$(this).parent().parent().parent().find("tr.cDescRow").toggle()');
   HTP.P(' });');
   HTP.P(' });');
   HTP.P ('</script>');
   HTP.P ('<style type="text/css">');
   HTP.P (' <!--');
   HTP.P ('td {');
   HTP.P ('height: 30px');
   HTP.P ('}');
   HTP.P (' .cDescRow {');
   HTP.P ('display:none');
   HTP.P (' }');
   HTP.P ('.cDesc {');
   HTP.P ('margin: 5px 20px');
   HTP.P ('border: 1px solid #999');
   HTP.P ('padding: 10px');
   HTP.P ('}');

   HTP.P ('.col1 {');
   HTP.P ('width: 40px');
   HTP.P ('}');

   HTP.P ('.btnToggle {');
   HTP.P ('font-weight: bold');
   HTP.P ('width: 30px');
   HTP.P ('height: 30px');
   HTP.P ('background: #eee url("./images/collapse_30x30.png" ');
   HTP.P ('}');

   HTP.P ('.highlight {');
   HTP.P (' XXbackground: green');
   HTP.P ('background-image:url(images/collapse_alt.png');
   HTP.P ('}'); 
   END;     -- HTML - */

次に、このコードを別のコードに追加して、ボタンが押されたときに手続きを呼び出します

class="btnToggle">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></td>'); ---<!-- change 5 added new cell for button -->

pl\sql プロシージャ bzckschd.p_disp_listcrse.?|| を呼び出します。パラメータを渡します sect_rec はカーソルからのレコードです

HTP.p
                                (   ' <li><a href="bzckschd.p_disp_listcrse.?||term_in'
                                           ||sect_rec.term_code
                                         || '&p_course_subj_code='
                                          ||sect_rec.ssbsect_subj_code
                                         || '&crse_in=' 
                                         ||sect_rec.ssbsect_crse_numb
                                         || '&crn_in=' 
                                         ||sect_rec.ssbsect_crn
                                           );                               
                         HTP.p('</TR>');    


 HTP.p('</TR>');
 HTP.p('<tr>');
 HTP.p('<table>');
  HTP.p('<tr>');
   HTP.p('<td CLASS="dddefault col1"><span class="btnToggle">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></td>'); ---<!-- change 5 added new cell for button -->
   HTP.p('</TR>');
 HTP.p('<TR class="cDescRow">');
                         HTP.p(' <TD CLASS="dddefault">&nbsp;</TD>');
                        HTP.p(' <TD colspan="14" CLASS="dddefault cDesc">Course description appears here when someone wants to see it.  It will go away when they dont...</TD>');
                    HTP.p
                                (   ' <li><a href="bzckschd.p_disp_listcrse.?||term_in'
                                           ||sect_rec.ssbsect_term_code
                                         || '&p_course_subj_code='
                                          ||sect_rec.ssbsect_subj_code
                                         || '&crse_in=' 
                                         ||sect_rec.ssbsect_crse_numb
                                         || '&crn_in=' 
                                         ||sect_rec.ssbsect_crn
                                           );                               
                         HTP.p('</TR>');    
                         HTP.p('</table>'); --- <!-- end of new table -->
                         HTP.p('</TR>'); 

ここに私の質問があります:

手順に JavaScript を追加したため、ページに次のエラーが表示されます。

Content-type: text/html; charset=UTF-8 Set-Cookie: SESSID=QjgwME5EMjU0NzY5; 

コード (JavaScript) にコメントを付けて、手順を再コンパイルしましたが、まだエラーが発生しています:

Firefox では上部にエラーのあるページが表示されますが、IE では表示されません

4

0 に答える 0