フィールドにフォーカスがあるときにポップオーバーを表示する複数のフォーム入力フィールドとテキスト フィールドがあります。一部のポップオーバーのコンテンツは長くなる可能性があるため、input タグ内でコンテンツを宣言したくありません。代わりに、次のものがあります。
<div class="form-group">
<label for="name">Name</label>
<input type="text" class="form-control js-tooltip-trigger" id="name" maxlength="50" >
<div class="js-tooltip" style="display: none;">
<p><strong>Your name.</strong></p>
<p>Enter your full name. This will be used ...</p>
</div>
</div>
<div class="form-group">
<label for="ref">Reference</label>
<input type="text" class="form-control js-tooltip-trigger" id="ref" maxlength="50" >
<div class="js-tooltip" style="display: none;">
<p><strong>Your reference is optional.</strong></p>
<p>Enter a code of your choice for reference purposes.</p>
</div>
</div>
私は次のJavaScriptを持っています
$(function () {
$('.js-tooltip-trigger').popover({
html: true,
trigger: 'focus',
content: function () {
return $(correct tool tip).html();
}
});
});
上記のJavaScriptで正しいポップオーバーを表示または返すにはどうすればよいですか。ツールチップのコンテンツにデータ属性を追加して、各入力フィールドにリンクする<div class="js-tooltip" style="display:none;" data-tooltip="name">
など、jquery を使用してそれを見つけて返すとどうなるでしょうか。jqueryでこれをどのように行いますか?誰もがよりエレガントなソリューションを持っていますか?
また、ウィンドウのサイズ変更時にポップオーバーを入力フィールドと自動位置に残すにはどうすればよいですか。現在、ウィンドウのサイズを変更すると浮き上がります。
上記のhtmlを使用して、自分でそれを理解することができます:
$(function () {
$('.js-tooltip-trigger').popover({
html: true,
trigger: 'focus',
content: function (e) {
return $(this).parent(".form-group").find(".js-tooltip").html();
}
});
});
よりエレガントなソリューションを考えられる人はいますか?