-1

私はjqueryがとても苦手なので、許しを請う必要があります:)

次のような div 要素があります。

<div id="MyDiv"><span id="Title"></span><div id="Text"></div></div>

適切なセレクターで見つけました:

var myDiv = $("#MyDiv")

このラップされたセットができたので、「タイトル」スパンと「テキスト」div を見つけて、ページの「MyDiv」div を変更せずにそれぞれにテキストを配置して、次のようなことができるようにします。

CallMyFunction(myDiv);

それ、どうやったら出来るの?

ご協力いただきありがとうございます。

4

3 に答える 3

0

ID を使用しているため、ID に直接アクセスできます。

$("#Title").text("My title text");
$("#Text").text("My text");

そしてhtmlを取得するには:

var myHTML = $("#MyDiv").html();

Titleまたはの ID を持つ要素が複数ある場合Text有効な HTML はありません

その場合、それらをクラスに変更する必要があり、次を使用します.find()

$("#MyDiv").find(".Title").text("My title text");
$("#MyDiv").find(".Text").text("My text");
于 2012-04-23T21:28:36.540 に答える
0

span にテキストを追加するには#Title

 $('#Title').text('Some Text'); 
 //Use .html inplace of .text incase if you are adding html content

同様に div 内で#Text

 $('#Text').text('Some More Text'); 
 //Use .html inplace of .text incase if you are adding html content

そして、コンテンツ全体を送信するには、.html()以下のような関数を使用します。

var myDivContent = $("#MyDiv").html();
于 2012-04-23T21:29:22.463 に答える
0

わかりました、あなたがしたいことは、関数呼び出しで、必要な div のクローンを変数に割り当て、それを編集して、その html を取得し、それを使用して他の関数を呼び出すことです。

function dosomething(myDiv){
    var texttodosomethingwith = getmodifiedhtml(myDiv);
    //do something with texttodosomethingwith
}

function getmodifiedhtml(element){
    var cloneddiv = element.clone();
    var innerspan = cloneddiv.children('span')[0];
    $(innerspan).text(sometext);
    var innerdiv = cloneddiv.children('div')[0];
    $(innerdiv).text(someothertext);
    return cloneddiv.html();
}

それはあなたが望むもののように聞こえますか?クローンを作成すると、ページに追加せずに div がコピーされるため、ページをそのまま残しながら、同じ構造と ID を取得できます。

dosomething($("#mydiv")); のように、要素の jquery 選択で dosomething を呼び出す必要があることに注意してください。

于 2012-04-23T23:58:52.490 に答える