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

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

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

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

jQuery

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

Q&A

解決済

1回答

422閲覧

jQueryで画像のsrcが取得できない

takagitoshinari

総合スコア24

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

jQuery

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

0グッド

1クリップ

投稿2019/01/08 11:41

編集2019/01/09 02:23

前提・実現したいこと

image_tagから画像を取得したいです

発生している問題

var src = $('.sell-upload-figure').children('img').attr('src'); console.log(src); で調べても"undefind"と返される

該当のソースコード

HTML

1<label for="item_images"> 2<div class='clearfix have-item-0 sell-upload-dropbox'> 3<input class="sell-upload-drop-file" multiple="multiple" style="display: none;" type="file" name="item[images][]" id="item_images" /> 4<pre> 5ドラッグアンドドロップ 6またはクリックしてファイルをアップロード</pre> 7</div> 8<ul class='has-error-text'> 9</ul> 10</label> 11<section class='modalArea' id='modalArea'> 12<div class='modalBg' id='modalBg'> 13</div> 14<div class='modalWrappers'> 15<div class='modalContents'> 16<div class='modal-bold'> 17写真を切りとる 18</div> 19<label for="item_images"> 20<span style='cursor: pointer;'> 21写真を変更する 22</span> 23</label> 24<i class='fas fa-camera'></i> 25</div> 26<div class='sell-crop-editor'> 27<canvas height='300' id='c1' style='cursor: grab;' width='400'></canvas> 28<div class='sell-crop-range'> 29<i class='fas fa-camera small-camera'></i> 30<input class='input-range-default' id='zoom-slider' max='2' min='1' name='scale' step='0.01' type='range'> 31<i class='fas fa-camera'></i> 32</div> 33</div> 34<div class='clearfix'> 35<li class='cansel-button' id='closeModal'> 36<a href="/items/new?method=post"> 37キャンセル 38</a> 39</li> 40<li class='ok-button'> 41<a href=""> 42完了 43</a>

javascript

1$(document).on("click", ".sell-upload-edit", function (e) { 2 e.preventDefault(); 3 $('#modalArea').fadeIn(); 4 }); 5 $('#closeModal , #modalBg').click(function(){ 6 $('#modalArea').fadeOut(); 7 }); 8 9onload = function() { 10 draw(); 11}; 12function draw() { 13 var canvas = document.getElementById('c1'); 14 if ( ! canvas || ! canvas.getContext ) { return false; } 15 var ctx = canvas.getContext('2d'); 16 /* Imageオブジェクトを生成 */ 17 var img = new Image(); 18 var src = $('.sell-upload-figure').children('img').attr('src'); 19 console.log(src); 20 // img.src = "/images/sample.jpg?"; 21 img.onload = function() { 22 ctx.drawImage(img, 0, 0); 23} 24

試したこと

一通りDOM操作は実行しましたが画像の情報は取得できませんでした。

補足情報(FW/ツールのバージョンなど)

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

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

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

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

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

m.ts10806

2019/01/08 12:19

前回質問でお願いしたことがあまり反映されていませんが・・・。 タグ、コードの提示(フレームワークのビューではなくhtmlソース) お願いしますね。このタグでこの内容では合致していませんし、その分、回答を得る機会を失しています。
takagitoshinari

2019/01/08 12:51

すみません!修正させていただきました!ご指摘いただきありがとうございます????‍♂️
m.ts10806

2019/01/08 12:58

うーん。このhtmlは正しくないので静的環境ではちゃんと再現確認ができません(たぶんCSSも必要です) 正しいhtmlが提示できそうにないならタグはRuby On Railsがあったほうがいいように思います。
guest

回答1

0

ベストアンサー

var src = $('.sell-upload-figure').children('img').attr('src');

console.log(src);
で調べても"undefind"と返される

.sell-upload-figureが提示されたHTML内のどこにも無いから。

投稿2019/01/08 15:19

kei344

総合スコア69407

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

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

takagitoshinari

2019/01/09 02:30

夜遅くにありがとうございます。一応renderで対応していて別のファイルにHTMLがあります。 こちらで何か解決のきっかけにはなりませんでしょうか? %li.sell-upload-item{class: "upload-item-#{@item.images.index(uploaded_image) + 1}"} =form.hidden_field :uploaded_image, {name: "item[uploaded_images][]",value: "#{uploaded_image.blob.key}"} %figure.sell-upload-figure =image_tag uploaded_image.variant(resize: "150x150") .sell-upload-button =link_to "編集", "", class: "sell-upload-edit" =link_to "削除", "", class: "sell-upload-delete"
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問