質問するログイン新規登録
JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

JavaScript

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

10759閲覧

JavaScript内で文字色を変更して結果を返したいです

yadrop

総合スコア57

JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

JavaScript

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2016/02/21 05:07

0

0

JavaScript上で文字色を変更して結果を返すにはどのように記述すれば良いのでしょうか

具体的には以下のようなことをしたいです

~~~
testMethod({
template : "テスト"
})
~~~

結果のテンプレートである「テスト」のテの部分だけ文字色を変更したいです。
イメージとしては
templaete : <style=color:"red">"テ"</style> + "スト"
のような感じなのですが、、、

どのように記述したらよろしいのでしょうか。

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

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

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

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

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

yamato_hikawa

2016/02/21 07:33

「テンプレートに書かれた文字列の、最初の一文字の文字色を変更する」と言う理解で問題無いですか? 文字色も自由に指定できるのなら、引数として色も指定する必要がありますが、赤で固定ですか?
yadrop

2016/02/21 07:40

最初の文字ではなく文字の一部分を変更したいです。 上ではテの部分でしたが、厳密に言うと途中の文字列を変更したいので この場合だと ス の部分です。 文字色は変更箇所は赤(#da0024)を、その他は黒(#333)を指定したいです。
yamato_hikawa

2016/02/21 07:44

「途中の文字列」をもう少し具体的に教えて下さい。 ・1文字だけですか? ・「◯文字目から●文字目まで」と指定できるようにしたいですか? ・テンプレートで渡された文字列の文字数から計算して、中央の1文字(あるいは数文字)を変換するようにしますか?
yadrop

2016/02/21 07:48

template: ”検索結果○件” ここの○に入る数字を赤色に、他を黒にしたいです。(数字は1~4桁程度)
guest

回答1

0

ベストアンサー

文字列を渡して特定部分を変えるより、HTML上で変更したい箇所に特定のクラスをつけてタグで囲っておいた方が、処理としては簡単になります。

html

1<p>検索結果<span class="search-result-num">999</span></p>

javascript

1// 色を変更する関数の定義 2var changeColor = function(){ 3 // search-result-num のクラス名を持つ要素を取得 4 var resultNum = document.querySelector('.search-result-num'); 5 6 // 色変更 7 resultNum.style.color = '#da0024'; 8} 9 10// 実行 11changeColor();

これでいいのであれば、そもそもCSSに数字用の色設定をしておけばいいだけではありますが…。

投稿2016/02/21 08:40

編集2016/02/21 08:46
yamato_hikawa

総合スコア2092

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

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

yadrop

2016/02/21 09:01

ありがとうございます! 初期表示ではHTMLとCSSを設定して <span>検索結果<span>○</span>件</span> としているのですが、検索処理後の表示が上記のようなtemplateがそのまま返ってきてしまっている状態なのです... そしてその原因を追究できていない為、templateで返却しているJSファイルのほうで色を変更できればと思っていたのですが、、やはり原因を探してHTMLで設定したほうがいいのですかね。。
yamato_hikawa

2016/02/21 09:14 編集

返却された文字列ですが、ソース上では<>の部分が文字列に置き換えた形になっていると思います(devツール等で確認してください) <span>○</span> → &lt;span&gt;○&lt;/span&gt; でないと、タグの文字列が直接表示されることはないので。 となると、結果の返却中にタグ文字列のエスケープがされているのではないかと思いますが、いかがでしょうか。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.30%

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

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

質問する

関連した質問