2017-11-07 12 views
0

私はデータ属性を持っており、そこに格納されている情報をテキストとして別のdivにロードする必要があります。属性は機能していますが、ページロード直後にdivに送信する方法がわかりません。Jqueryを使用したデータとしてのデータ

コード:任意の助け

$(".title").click(function(){ 
 
\t var title = $(this).data("project"); 
 
\t $(".project").text(title); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 

 
<p class="project"></p> 
 

 
<div class="projectTitle"> 
 
    <p class="title" data-project="projecttitle"> 
 
    click to get data 
 
    </p> 
 
</div>

感謝:)

答えて

1

あなたはそれをできるだけ早くページが読み込まとして起こるしたいように聞こえます。関数をready()に入れることはできますか?以下のようなものは:私はそれを実行したときに

$().ready(function() { 
    var title = $("#title-id").data("project"); 
    $(".project").text(title); 
}) 

https://api.jquery.com/ready/

+0

ありがとうございます。その働き。しかし、どうやってこれを動的に作ることができるか知っていますか?スライドショーでこれを使用し、キャプションにこれを使用したいと思います。瞬間に最初のキャプションだけが表示されます...あなたがここで私を助けることができればいいですか? – Dennis

+0

@Dennisはあなたのページの仕組みによって異なります。タイトルが他のコードによって動的に更新されている場合は、 .click()の代わりにchange()イベントハンドラを使用します。 – freshop

0

あなたのコードは動作します。 https://jsfiddle.net/zs76ypue/

$(".title").click(function(){ 
    var title = $(this).data("project"); 
    $(".project").text(title); 
}); 

編集:

ああ、私はあなたが、これはクリックではなく、ページのロードで発生しないようにしたい参照してください。そうであれば、もう一つの答えは正しく、.ready()を使ってください。

関連する問題