3

編集: 新しい情報:フィールドを検査し、(インスペクターで) コードを強調表示すると、ステートメントはすべて正常に機能しますが、フィールドが強調表示されなくなると、ステートメントが機能していないように見えます。これが問題の診断に役立つことを願っています。

私は wufoo フォーム (埋め込み、送信時に特定のメールに送信できるホストされたフォーム) を持っています。ボタンをクリックすると、そのフォームに特定のデータを入力しようとしているフィールドがあります。私はこれを実現するための正しいコードを持っていると信じており、それはうまくいくはずです:

    $('#my-button').click(function() {
      $('#Field3').val("something");
    });

私は多くの異なる方法を試しました:

    $('input[id="Field3"]').val("something");
    $('input[name="Field3"]').val("something");

そして、私が本当にうまくいくとは思わなかったいくつかのリーチ..

    $('#Field3').append("something");
    $('#Field3').text("something");

ここで私を混乱させることがいくつかあります。私が何を意味するかを示す画面を以下に投稿します。ページが読み込まれると、コンソールにこれらすべてのコマンドを入力できますが、フィールド (Field3 の ID) には何も起こりません...ほとんどの場合。しかし、何度かページをリロードし、いくつかのステートメントをもう一度試してみました。そうです、同じステートメントでした。理由や方法はわかりませんが、断続的なものです。明らかにそうではないかもしれませんが、なぜこれが起こっているのかについて私はかなり混乱しています。

以下は、私のコンソールの 3 つの画面です。最初の 2 つについては、コンソールで約 10 回以上試行した後、フィールドが最終的に入力され、以前は機能しなかったコマンドを使用している間も機能し続けました。最後の画面は、まったく機能しなかった試みです。

[![Eventually Works After Last Command][1]][1]
[![Eventually Works After Last Command][2]][2]
[![Did Not Work][3]][3]

[1]: http://i.stack.imgur.com/JKVxY.jpg
[2]: http://i.stack.imgur.com/MLca8.jpg
[3]: http://i.stack.imgur.com/0viRA.jpg

(これらの画像を投稿しなければならなかった方法についてお詫び申し上げます。フォーマットエラーが発生し続け、cmd + kしない限り投稿を保存し続けることはできません)

最初にコンソールですべてを試しますが、ここでパターンを見つけることができません。アイデアやご意見をいただければ幸いです。お時間をいただきありがとうございます。

4

4 に答える 4

1

あなたが問題を解決したことは知っていますが、あなたや他の人が将来この問題を再び抱えた場合に備えて、私はチャイムを鳴らすと思いました. あなたの問題は実行順序に関連していたようです。Wufoo の埋め込みスクリプトは非同期であるため、jQuery クリック ハンドラーが評価された時点で、問題の入力フィールドがまだページに存在していなかった可能性が非常に高くなります。元のコードを「クリック」ではなくjQueryの「on」メソッドに変更すると、「on」が委任されたイベントリスナーを提供するため、問題が解決する可能性があります。とにかく、すべてが整理されてよかったです!

于 2016-09-03T23:17:58.240 に答える
0

コンソールでは、jQuery がロードされていないと想定しています。

私は通常、次のように書いています。

document.getElementById('Field3').value = "something";
于 2016-08-30T17:31:30.210 に答える
0

Jsfiddleを更新しました。私が変更した唯一のことは、 Jquery の参照を追加したことです。それが問題なのかもしれません。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
于 2016-08-30T17:54:36.983 に答える