内部と外部の両方のリンクを含む選択オプションのドロップダウンがあります。外部リンク (およびそれらのみ) を新しいタブで開きたい。これは私が持っているものです。
<select id="my-dropdown">
<option value="">A list of internal and external links</option>
<option value="http://www.someurl.com">External Link</option>
<option value="/internal/page">Internal links</option>
</select>
リンクを開くJS。
<script>
document.getElementById("my-dropdown").onchange = function() {
if (this.selectedIndex!==0) {
window.location.href = this.value;
}
};
</script>
編集: JS をこれに変更すると、次のようになります。
<script>
document.getElementById("my-dropdown").onchange = function() {
var externalLinkCheck = this.options[this.selectedIndex].value;
if (this.selectedIndex!==0 && externalLinkCheck.substring(0,4) == "http") {
window.open(this.value, '_blank');
} else {
window.location.href = this.value;
}
};
</script>
以下のchriserwinの回答も良いです!ありがとう!