にhtmlコンテンツを読み込み、qtip2を使用して、タイムライン内のハイパーリンクがクリックされたときにツールチップを表示しようとしています。このツールチップはhtmlコンテンツを表示する必要があるので、その中に ""が入っているので、title = ""に挿入すると問題が発生します。通常、引用符を扱うことができるようにタイトル= '< -html - content->'に一重引用符を使用することができます。しかし、私はすでにjavascript自体から一重引用符を使用するjavascriptの中からこれをやろうとしているので、今は問題に直面しています。タイトルのqtipとhtmlデータが競合の原因となっています
visjs timelineにアイテムを追加する場合は、このようにタイムラインに新しいアイテムを挿入する必要があります。
{id: <?php echo $key; ?>, group: <?php echo $aspects['group'][$key]; ?>, content: '<a title="<?php if(isset($aspects['interpretation'][$key])): echo $aspects['interpretation'][$key]; endif;?>" role="button"><?php echo $aspects['symbols'][$key]; ?></a>', start: new Date(<?php echo $aspects['dates']['start'][$key]['year']; ?>, <?php echo $aspects['dates']['start'][$key]['month'] - 1;?>, <?php echo $aspects['dates']['start'][$key]['day'];?>, <?php echo $aspects['dates']['start'][$key]['hour'];?>, <?php echo $aspects['dates']['start'][$key]['min'];?>), end: new Date(<?php echo $aspects['dates']['end'][$key]['year']; ?>,<?php echo $aspects['dates']['end'][$key]['month'] - 1; ?>, <?php echo $aspects['dates']['end'][$key]['day']; ?>, <?php echo $aspects['dates']['end'][$key]['hour']; ?>, <?php echo $aspects['dates']['end'][$key]['min']; ?>) },
あなたが見るとおり、コンテンツ: 'href etc'はすでに一重引用符を使用しています。では、どうやってこのHTML引用符をエスケープして、矛盾を起こさないようにすることができますか?私はhrefのtitle = \ "\"のようなものを試しましたが、私の問題を解決するための解決策はまだ見つかりません。
何か変更されましたが、今やhtmlコンテンツは、複数の行を含んでいるため、コンテンツを破壊するようです。 – HermesTrismegistus
複数の行は、htmlspecialcharsではなく、あなたのvarsから来ています。 jsソリューションが必要な場合は、ドキュメントを詳しく見てみたり、他の回答をチェックしてみることをお勧めします。 あなたの文字列のif文を評価するべきではありません。前にそれらを評価して、それからただちにそれらを評価してください。そして、あなたが適切にフォーマットされたあなたのコードを投稿すれば、本当に役に立ちます。 –
ヘルプのためにstr_replace、thanxを付けて改行を削除しました。それは今働いて:) – HermesTrismegistus