作成中の植物図鑑サイトに目次(Contents)のページの追加をしようとしています。
目次ページでは、各項目ごとに、テーブルメーカーで生成されるページヘの外部リンクを付けようとしています。
その方法で、分からないことがありますので、ご教授ください。
1.テーブルメーカーの詳細ページへの外部リンクについて
[サイトURL]/cgi/[テーブル名]/start.cgi?m=DetailViewer&c=1&n=[自動的で生成されるID]&mod=TileViewer
と指定すると、外部からテーブルメーカーの詳細ページを開くことができました。
これをテーブルメーカーの一覧ページから開くときのように、ポップアップウインドウで開くようにする指定は可能でしょうか?
理由は、詳細ページの「閉じる」ボタンをクリックしてしまうと、リンク元のサイトも閉じてしまうからです。
2.テーブルメーカーの検索結果ページへの外部リンクについて
[サイトURL]/cgi/[テーブル名]/start.cgi?m=DetailViewer&search:[フィールドID]:str=[検索ワード]
と指定すると、外部からテーブルメーカー検索結果ページを開くことができることを、教えて戴きやってみました。
2-1.この指定が可能なのは、検索ページに使っているフィールドだけなのでしょうか?
検索ページには無いフィールドのID(公開指定はしている)では、検索結果ページではなく、一覧ページの表示になりました。
2-2.検索ワードの完全一致の指定は可能でしょうか?
具体的には属名のリンクで、ユキノシタ属もあればヒマラヤユキノシタ属もあり、チチコグサ属もあればチチコグサモドキ属もあるためです。
お世話になっております。
ご質問ありがとうございます。
1.テーブルメーカーの詳細ページへの外部リンクについて
詳細表示ページの「閉じる」ボタンは、そのウィンドウが別のウィンドウから開かれていない場合「戻る」ボタンとなります。もし「閉じる」ボタンで表示される場合は、リンク元ウィンドウが、別のウィンドウのリンクから開かれたものである可能性があります。新規ウィンドウでテストすると「戻る」ボタンになるのではないかと思います。
2.テーブルメーカーの検索結果ページへの外部リンクについて
2-1.この指定が可能なのは、検索ページに使っているフィールドだけなのでしょうか?
はい、検索対象に指定されていないフィールドは、検索できません。検索対象に指定すると検索可能になります。
2-2.検索ワードの完全一致の指定は可能でしょうか?
完全一致を指定するには mode オプションを追加し、「eq」とします。
[サイトURL]/cgi/[テーブル名]/start.cgi?m=DetailViewer&search:[フィールドID]:str=[検索ワード]&search:[フィールドID]:mode=eq
以上参考になりましたら幸いですm(_ _)m。
ご回答有難うございます。
1の件ですが、ID番号を知ろうとして開いた詳細ページを閉じずに、リンク表示の確認をしていたので、「閉じる」ボタンのままだったようです。
2-1の件。
科より上の分類項目にも、リンクが設定できるかと思いましたが、実用上は種数が多いので、せいぜいその項目の対象種数が知れるだけになります。新たな検索項目を増やしても、使い勝手の向上になりそうにないので、無リンクのままにします。
2-2の件。
modeオプション付加して確認します。
類似の質問のため、横から失礼いたします。
トピック最初にある
「外部からテーブルメーカーの詳細ページをポップアップウインドウで開くようにする指定は可能でしょうか?」
という件ですが私もそのように表示したく、多分javascriptでやるんだろうと思いいろいろやってみたのですが、ポップアップ表示されませんでした。
きっと記述が間違っているだけだろうと考えておりますが、正しい方法をご教示頂ければと思います。
ご質問ありがとうございます。
ご推察の通り CMONOS.JP では JavaScript でポップアップウィンドウを開いています。
CMONOS.JP で管理しているページでは、cmonos.js に記述されている JavaScript を利用してポップアップします。そのため、CMONOS.JP で管理されているページのリンクタグをそのままコピーしても、cmonos.js が読み込まれていないページでは動作しません。
JavaScript だけで書くとたとえば次のようになります。
<a href="http://cmonos.jp/samples/unrealestate/cgi/db/start.cgi?m=DetailViewer&c=1&n=9" target="detailViewer" onclick="window.open('','detailViewer','width=640,height=480,scrollbars=yes,resizable=yes'); return true;" title="詳細">詳細</a>
上記は JavaScript が動かない環境でもリンクが動作する記述となっています。以上参考になりましたら幸いです。
〈追記〉
もし CMONOS.JP の文字列フィールドにリンクタグを書き込んでいる場合は、文字列フィールドの詳細設定を確認してください。
※ JavaScrip が禁止されていると、ポップアップさせる JavaScript が削除されます。
もし CMONOS.JP の文字列フィールドにリンクタグを書き込んでいる場合は、文字列フィールドの詳細設定を確認してください。
ありがとうございます。このケースでした。
さらにもう一つ質問させてください。CSVタグの中にお教え頂いたjavascriptを記述すると、
というふうにスクリプトがセルで分割されてしまいます。これを避ける方法はありませんでしょうか?
ご返信ありがとうございます。EXCEL方式でセルごとに引用符「"」で囲い、セル中の「"」をエスケープすれば CSV タグ中に記述するとスクリプト中のカンマで分割されません。
ただ、この方法も面倒かと思います。文字列フィールドはタブ区切りテキストについてもテーブルに変換しますので、テキストエディタなどタブが入力できる環境でタグを記述し、それをコピー&ペースとする方法でも解決できます。