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

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

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

SVGは、XMLを基盤とした2Dベクター画像記述言語。画像を線・面といった図形の集合体として扱うベクター画像のため、環境に適した表示が可能です。アニメーション機能もサポートされており、簡単なインタラクティブコンテンツ作成もできます。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

JavaScript

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

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

0回答

556閲覧

オブジェクトの属性変更が画面に反映されない。(オブジェクトのリフレッシュ)

sanezane

総合スコア91

SVG

SVGは、XMLを基盤とした2Dベクター画像記述言語。画像を線・面といった図形の集合体として扱うベクター画像のため、環境に適した表示が可能です。アニメーション機能もサポートされており、簡単なインタラクティブコンテンツ作成もできます。

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

JavaScript

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

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2018/07/09 00:39

編集2018/07/09 07:05

当方の解決していない質問の中の、フロントにフォーカスした質問です。
情報が足りないようでしたらController,Model等もコード追加します。
部屋番号というタブがありまして、タブをクリックするごとに部屋に入っているオブジェクトの属性(内容)を切り替え、マウスオーバーでツールチップ表示したい。という仕様です。

タブクリックするごとにオブジェクトの情報が書き換わることはデベロッパーツールにて確認済みだが、画面に反映されない。
reloadは初期の値に戻ってしまうので意味がない。reloadの使い方に問題アリ?
オブジェクトをリフレッシュして属性を更新する的機能はありませんか?
ちなみにTipperというjQueryプラグインを使ってツールチップ表示を表現しております。
コード最後のtipper()にてマウスオーバーでデータが表示されます。
以下コード内情報

・Number...部屋番号
・List1...部屋番号1に対応するデータをまとめたものをモデルより呼び出し
・#gP...名前が入っているオブジェクト#gP01~#gP24(これを更新したい)
・.P...#gP01~#gP24に付与しているクラス(ツールチップ表示に使用)
・data-title属性を書き換えています。

javascript

1(c# asp.net Index.cshtml) 2 if (Number == 1) 3 { 4 var List1 = {}; 5 @for (int i = 0; i < Model.List1.Count(); i++) 6 { 7 @:List1[@i] = '@Model.List1[i]'; 8 } 9 for (var index in List1) 10 { 11 var num = Number(index) + 1; 12 var id = "#gP" + (('00' + (num)).slice(-2)) 13 $(id).attr('data-title', (List1[index])); 14 } 15 $('.P') 16 } 17

このブロックがif(Number==5)まであります。
オブジェクトをリフレッシュする方法があれば、ご教授いただければ幸いです。

今回、オブジェクトをSVGファイルで管理していまして、htmlにつきましてはそのファイルを読み込むという形をとっています。ですので該当オブジェクトに関するSVGファイルの内容をご提示します。
初期表示時に上記コードを入れていますので初期表示時はgタブにdata-titleが入っています。

html

1 <g 2 class="P" 3 //クラス 4 id="gP4" 5 //ID 6 transform="translate(-0.5291751,-3.4683591e-6)"> 7 <rect 8 style="display:inline;fill:#b3b3b3;fill-opacity:1;stroke:#000000;stroke-width:0.07969642;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 9 id="P4_rect" 10 width="7.55512" 11 height="18.46151" 12 x="84.945335" 13 y="174.39366" /> 14 <text 15 xml:space="preserve" 16 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.60198593px;line-height:1.25;font-family:'MS Gothic';-inkscape-font-specification:'MS Gothic, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26413709" 17 x="87.434586" 18 y="185.37314" 19 id="P4_text" 20 transform="scale(1.0001351,0.99986491)"><tspan 21 id="tspan1324-3-6-4-7-0-7" 22 x="87.434586" 23 y="185.37314" 24 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:4.60198593px;font-family:'MS Gothic';-inkscape-font-specification:'MS Gothic, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.26413709">4</tspan></text> 25 </g>

追記*****************************************************************
プラグインをdarktooltipというものに変更したところ切り替わることを確認できました。
しかし、切り替える前のツールチップが現データ表示のツールチップの後ろに出てしまうという事象が発生しています。イメージ画像追加。
メモリのことを考えると現時点のツールチップ以外は出したくないので、切り替える以前のツールチップのオブジェクトを破棄するのになにか良い方法はありますでしょうか。
私にはスキル不足で出来ませんが、プラグインを少しイジれば古いオブジェクトは消せるよー、っていう場合はご教授願います。
以下、プラグインのURLです。
リンク内容
イメージ説明

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

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

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

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

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

m.ts10806

2018/07/09 00:47

HTMLもご提示ください
sanezane

2018/07/09 01:00

内容編集いたしました。今回、オブジェクトをSVGファイルで管理していまして、htmlにつきましてはそのファイルを読み込むという形をとっています。ですので該当オブジェクトに関するSVGファイルの内容をご提示します。 初期表示時に上記コードを入れていますので初期表示時はgタブにdata-titleが入っています
m.ts10806

2018/07/09 01:02

ああ・そうか・・C#でしたね。タグに追加しておいてください。
sanezane

2018/07/09 01:05

承知しました。
m.ts10806

2018/07/09 01:09

JavaScriptなら私も可能かなと思って質問内容見てみたらちょっと事情が違ったようなので、分かりそうな人が見てもらえるように修正してもらいました。お力になれずすみません。
sanezane

2018/07/09 01:14

いえいえ。ありがとうございます。c#といれると見てももらえないかと思ってあえて外してました。笑
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問