[解決済み] jQueryで特定のidを持つdivが存在するかどうかを確認するにはどうすればよいですか?
2022-04-01 09:07:23
質問
を追加する関数があります。
<div>
をクリックすると、その要素が表示されます。この関数は、クリックされた要素のテキストを取得し、それを変数
name
. その変数が
<div>
id
を追加した。
を確認する必要があります。
<div>
id
と
name
は、私が要素を追加する前にすでに存在しますが、私はこれを見つける方法を知りません。
以下は私のコードです。
$("li.friend").live('click', function() {
name = $(this).text();
// if-statement checking for existence of <div> should go here
// If <div> does not exist, then append element
$("div#chatbar").append("<div class='labels'><div id='" + name + "' style='display:none;'></div>" + name + "</div>");
// Else
alert('this record already exists');
});
これは非常に簡単なように見えますが、エラーが発生します。 クラス名の検索中に予期せぬファイルの終了が発生しました。 . その意味が全く分かりません。
if (document.getElementById(name)) {
$("div#" + name).css({bottom: '30px'});
} else {
$("div#page-content div#chatbar").append("<div class='labels'>" + name + "</div><div id='" + name + "'></div>");
}
さらに、この要素を閉じれば
div id [name]
をドキュメントから削除しますが
.remove()
はこれを行いません。
以下はそのコードです。
$(".mini-close").live('click', function(){
$(this).parent().remove();
});
を追加しました。
.mini-close
の子として append 関数に追加します。
.labels
を閉じる方法がありました。
<div>
を使用します。をクリックした後
.mini-close
からもう一度同じ名前をクリックしようとすると
li.friends
を見つけると、やはり
div id [name]
の最初の部分を返します。
if
ステートメントを使用します。
どのように解決するのですか?
を使用することができます。
.length
のように、セレクタの後で、何か要素にマッチしているかどうかを確認します。
if($("#" + name).length == 0) {
//it doesn't exist
}
完全版です。
$("li.friend").live('click', function(){
name = $(this).text();
if($("#" + name).length == 0) {
$("div#chatbar").append("<div class='labels'><div id='" + name + "' style='display:none;'></div>" + name + "</div>");
} else {
alert('this record already exists');
}
});
もしくは、この部分についてはjQuery以外のバージョン(IDなので)。
$("li.friend").live('click', function(){
name = $(this).text();
if(document.getElementById(name) == null) {
$("div#chatbar").append("<div class='labels'><div id='" + name + "' style='display:none;'></div>" + name + "</div>");
} else {
alert('this record already exists');
}
});
関連
-
[解決済み】Javascript - ERR_CONTENT_LENGTH_MISMATCH
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] jQueryでチェックボックスに "checked "を設定する
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み] jQueryの「exists」関数はありますか?
-
[解決済み] jQueryでページを更新するにはどうすればよいですか?
-
[解決済み] jQueryで要素にスクロールする
-
[解決済み] jQueryで入力を無効化/有効化する?
-
[解決済み】jQueryでチェックボックスがチェックされているかどうかを確認するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Uncaught TypeError: nullのプロパティ'value'を読み取ることができない
-
[解決済み】SyntaxError: ChromeのJavascriptコンソールでUnexpected Identifierが発生する。
-
[解決済み】XMLパースエラー:ルート要素が見つからない コンソールの場所 FF
-
[解決済み] ローカルファイルを開くことができません - Chrome: ローカルリソースのロードが許可されていません
-
[解決済み】Babel NodeJS ES6: SyntaxError: 予期しないトークンのエクスポート
-
[解決済み】Uncaught TypeError: 未定義のプロパティ 'msie' を読み取れない - jQuery tools
-
[解決済み】HTMLの最初の行に予期しないトークン<がある。
-
[解決済み】JavaScriptで関数が存在するかどうかを確認する方法は?
-
[解決済み] Uncaught (in promise) TypeError: フェッチに失敗してCorsエラー
-
[解決済み] jQueryの「exists」関数はありますか?