問題タブ [clonenode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
6 に答える
8696 参照

javascript - cloneNode(true) の使用後に正しい Javascript イベントを維持する方法

複数行の入力を含むフォーム要素があります。各行は、Web アプリケーションで作成する新しいオブジェクトの属性と考えてください。そして、1 回の HTTP POST で複数の新しいオブジェクトを作成できるようにしたいと考えています。Javascript の組み込み cloneNode(true) メソッドを使用して、各行を複製しています。問題は、各入力行にも onclick イベントに添付された削除リンクがあることです。

複製された入力行の削除リンクをクリックすると、同じ dom オブジェクトから複製された入力行も削除されます。上記のDOM要素でcloneNode(true)を使用した後、「this」オブジェクトを適切なアンカータグに再バインドすることは可能ですか?

0 投票する
3 に答える
7460 参照

javascript - element.cloneNode(true) (ディープ クローン) はどのくらい効率的ですか?

XSL テンプレートを使用して、div 要素の innerHTML のコンテンツとして使用される XML DOM オブジェクト内に HTML コードを作成しています。伝統的に、新しい XML DOM ドキュメントを作成し、javascript を介して変換用の XML 要素として入力パラメーターを追加します。基本的に、現在のアカウントを表す別の XML ドキュメントからデータを手動で選択し、そのデータを一時的な XML DOM ドキュメントにコピーしているため、これはすべて非常に時間がかかります。

私がやりたいことは、アカウント ドキュメント (顧客情報など) の関連するノードを複製し、それを変換の基礎として使用することです。アカウント オブジェクトを変更せずに変換固有の入力を追加できるようにしたいので、アカウント ドキュメントを直接使用したくありません。

通常 2000 以上の要素を持つドキュメントから、通常 200 未満の要素の目的のノードに .cloneNode(true) を使用するのはどのくらい効率的ですか? ターゲット プラットフォームは IE6 で、外部ツール (つまり ActiveX) はありません。

0 投票する
1 に答える
3225 参照

javascript - documentFragment.cloneNode(true)はjQueryデータのクローンを作成しません

次のように追加された.data()を含むいくつかの子ノードを持つdocumentFragmentがあります。

documentFragmentをページのdivに追加しようとすると:

私はデータにうまくアクセスできます:

しかし、cloneNode(true)を使用してノードのクローンを作成すると、ノードのデータにアクセスできなくなります。:(

他の誰かがこれを行ったか、回避策を知っていますか?行のデータをに格納できると思いますjQuery.data('#some_random_parent_div', 'rows', [array of ids])が、それでは、各行でデータをすぐに/簡単に利用できるようにするという目的が少し損なわれます。

jQueryがdocumentFragmentsを使用していることも読みましたが、正確にどのように、どのメソッドで使用されているのかわかりません。誰かがそこにこれ以上の詳細を持っていますか?

再編集:.clone(true)

0 投票する
1 に答える
7858 参照

javascript - すべての子ノードを他の要素にコピーするネイティブな方法

XMLの「不明な」コンテンツを変更する必要があります。構造と内容自体は有効です。オリジナル

になります

したがって、ドキュメントルートノード(document.documentElement)のすぐ下に子を追加し、その下の「元の」子を「プッシュ」します。ここでは、プレーンjavascript(ecmascript)で実行する必要があります。

今のアイデアは

それを行う方法/** /ステップ?それとも、誰かが望ましい結果を達成するための一般的にはるかに優れた解決策を持っていますか?
前もって感謝します!

回答:maericsによるソリューションは完全に機能します。

0 投票する
4 に答える
6992 参照

javascript - InternetExplorerのcloneNode

次のコードを実行している間、IEはcloneNode()メソッドを参照してエラー(オブジェクトはこのプロパティまたはメソッドをサポートしていません)をスローします。'i'はループカウンターであり、sourceとdestは両方ともHTML選択要素です。

FFとChromeは期待どおりに動作します。IEにcloneNode()を実行させる方法に関するアイデアはありますか?IE 8デバッガーは、source.options [i]にcloneNode()メソッドがあることを示しています。

ありがとう。

0 投票する
1 に答える
1530 参照

php - SimpleXML を使用してある XML ドキュメントから別の XML ドキュメントにノードを移動する

SimpleXML だけを使用して要求を実行することはできないことに気付きました。これが私が試したものです:

importNode は dom 要素ではなく dom ドキュメントの関数であるため、コードの 5 行目でエラーが発生していることに気付きましたが、どうすれば dom ドキュメントにこのステップを実行させることができますか?

私はこれを正しい方法で行っていますか?

大まかに言うと、私は少なくとも 10 個のノードを持つ XML ファイルを持っています。CRON ジョブは毎日、10 個を超えるノードがあるかどうかを確認し、そうであれば、ノードを現在のファイルからアーカイブ ファイルに移動することになっています。 . ノードをアーカイブ ファイルにコピーし、元のファイルから削除することで、ノードを「移動」すると考えました。

助けてくれてありがとう!

0 投票する
1 に答える
347 参照

javascript - clone 関数を使用して、渡された変数番号と等しい入力テキスト行を含むフォームをロードする

私がやりたいことはすべて (PHP を使えば十分に簡単ですが、スクリプトを変更してスクリプトの動作を理解することで、JavaScript と jQuery とフロント エンドのコーディングを今すぐ学習するように自分自身をプッシュしています) は、同じフォームを作成することです。前のフォームから「座席」変数が規定する行数。次に、登録者は、招待するゲストの名前を入力できます。cloneNode 機能を使用しようとしています。しかし、このスクリプトに含まれる [行の追加] フォーム ボタンを使用せずに作成される行数を規定する方法を理解するには、ここで何が起こっているのかを理解できません。

ここに私が取り組んでいるコードがあります。変数名「seats」を、作成された行数と等しくしたいだけです。ありがとう!:

0 投票する
1 に答える
1430 参照

javascript - javascriptcloneNodeとプロパティ

プロパティを含め、ノードを「スーパー」ディープクローンする簡単な方法はありますか?(そして方法、私は推測する)

私はこのようなものを持っています:

新しく複製されたオブジェクトにはdictatorプロパティがありません。さて、私が千のプロパティをアタッチしているとしましょうtheSource-どうすればそれらを(非明示的に)クローンに転送/コピーできますか?

// 編集

@Fabrizio

あなたのhasOwnProperty答えは正しく機能しないので、私はそれを調整しました。これは私が探していた解決策です:

0 投票する
1 に答える
2475 参照

javascript - ボタンの機能を含めて JavaScript で複製するにはどうすればよいですか?

いくつかの要素を追加するボタンがあります。このボタンを複製するボタンが必要です。

に関する記事をいくつか見つけましclone()たが、それは jQuery だと思いますか?

答えが見つからないようですが、次のように考えました。

少なくともそれは私には少し意味がありますが、もちろんうまくいきません。これどうやってするの?

0 投票する
3 に答える
9198 参照

javascript - Javascript で要素 [div] [script] を複製する

純粋な Javascript で div を複製しようとしていますが、cloneNode によって ID (div_0) が重複します。id を div_1, div_2... のようにインクリメントし、somevar = {'elem', 'div_1'} にも同じことをしたいと思います... ありがとう