JavaScript の再帰関数に関する質問はマスターに質問してください。
漂亮男人
漂亮男人 2017-06-28 09:24:22
0
2
619

こんばんは、マスター、私の関数が実行できない理由を調べるのを手伝ってください。
状況説明: p のテーブルは ajax を介して読み込まれているため、この関数の目的はそのようなテーブルが存在するかどうかを判断することです。存在する場合は背景を赤にします。存在しない場合は、1 の後に次の関数を実行します。しかし、テーブルがロードされて表示されると、find() 関数によってテーブルが赤くなりません (エラー レポート: Uncaught RangeError: 最大呼び出しスタック サイズを超えました)
マスターの皆さん、よろしくお願いします。

漂亮男人
漂亮男人

全員に返信(2)
我想大声告诉你

との最大通話数を超えたため。 p.getElementsByTagName('table')[0]这个取到的是一个DOM对象,由于DOM对象没有.length属性,所以target.length其实是未定义的。而undefined > 0的值一直是false,所以你会无限次地调用else分支,所以也就会添加无数次的find(p)绑定。所以浏览器提示find

正しいアプローチは、

の値をそのままにすることです。 targetp.getElementsByTagName("table"),这才是一个数组,才有.length

アップデート

コード:

オプション1: (すべてのテーブルの配列の長さを判断し、最初の操作を実行します)
リーリー

オプション2:(テーブルを直接判定し、取得したテーブルを直接操作する)

リーリー

いいねを押す +0
世界只因有你

target.length ターゲットはテーブルです。table.length とは何ですか?

ぜひ参考にしてください

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!