質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

1678閲覧

【javascript】全ての数字に処理を適用するという書き方

tajix_japan

総合スコア132

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2017/07/16 23:35

【保有するテーブル】
1つのホームぺージにテーブルが多数あります。
それぞれのテーブルには下記のようにIDが振られています。
ID="table1"
ID="table2"
ID="table3"



ID="table100"

【保有するJavescript その1】
一方で、下記のような自動URLリンクプラグインがあります。

javascript

1<script type="text/javascript"> 2/* 自動URLリンクプラグイン for jQuery 32009.1 By KaZuhiro FuRuhata */ 4$.fn.urlAutoLink = function(baseURL){ 5 return this.each(function(){ 6 var srcText = this.innerHTML; 7 this.innerHTML = srcText.replace(/(https?:\/\/[\x21-\x7e]+)/gi, "<a href='$1' target='blank'>$1</a>"); 8 }); 9} 10</script> 11

このプラグインを下記のように使用することで ID="table1" のテーブル内にあるhttp またはhttps から始まるURLが全て自動リンクされます。

【保有するJavescript その2】

javascript

1<script type="text/javascript"> 2 $(function () { 3 $("#table1").urlAutoLink(); 4 }); 5</script> 6

このプラグインは、最初の「id="table1" のテーブル」だけにリンクを張ることが出来ます。テーブルが2つあった場合、2つ目のテーブルにリンクを張るには、下記のようにtable2を新たに設定しなければなりません。

javascript

1<script type="text/javascript"> 2 $(function () { 3 $("#table1").urlAutoLink(); 4 $("#table2").urlAutoLink(); 5 }); 6</script>

tableは多数あるため、下記のように書き足していくのも不憫です。

【保有するJavescript その3】

javascript

1<script type="text/javascript"> 2 $(function () { 3 $("#table1").urlAutoLink(); 4 $("#table2").urlAutoLink(); 5 $("#table3").urlAutoLink(); 6 $("#table4").urlAutoLink(); 7 $("#table5").urlAutoLink(); 8 $("#table6").urlAutoLink(); 9 . 10 . 11 $("#table100").urlAutoLink(); 12 }); 13</script>

【やりたいこと】

$("#table の次に数字が来る前提で、【保有するJavescript その3】のように $("#table●").urlAutoLink(); を100個羅列するのではなく、table● (●の中は数字) というIDのテーブルには、全てurlAutoLink()が適用されるというjavascriptの書き方を教えてください。

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

属性セレクタを使ってください。

JavaScript

1jQuery('[id^=table]').urlAutoLink();

上記コードだけでは id="tablehoge" にもマッチする為、.filter() で絞り込んでください。

Re: tajix_japan さん

投稿2017/07/17 00:04

編集2017/07/17 00:10
think49

総合スコア18162

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tajix_japan

2017/07/17 00:37

有難うございます。出来ました。 属性セレクタ。勉強になりました。いろいろ応用できそうです。 大変助かりました。 深く御礼申し上げます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問