8

ユーザーが選択フィールドからオプションを選択するか、テキスト フィールドにテキストを入力してリンクをクリックしたときに値を設定する必要があるテキスト フィールドがあります。両方のイベントは、選択およびテキスト フィールド/リンクを含む div を閉じます。

選択オプションが機能します

$(document).on("change", ".select_choice", function(event) {
    var string = $(this).find("option:selected").text();
    $(this).closest(".select_toggle_area").find(".toggle_choices").toggle();
    $(this).closest(".select_toggle_area").find(".target_input").val(string);
});

テキスト フィールド/リンクは 2 回目のクリックで機能します。フィールドに何かを入力しても、最初のクリックではリンクが機能しません。div は非表示になりますが、ターゲット フィールドの値は更新されません。

$(document).on("click", ".text_choice_button", function(event) {
    event.preventDefault();
    var string = $(this).closest(".select_toggle_area").find(".text_choice").val();
    $(this).closest(".select_toggle_area").find(".target_input").val(string);
    $(this).closest(".select_toggle_area").find(".toggle_choices").toggle();
});
4

6 に答える 6

2

複製できません

私はこれをいじりましたが、複製できません: http://jsfiddle.net/DCM48/

さらにヘルプが必要な場合は、問題の完全なフィドルをアップロードしてください。

-レデジェ

于 2012-10-17T21:30:22.477 に答える
1

デリゲートを使ってみる

$(document).ready(function() {
    $("body").delegate("click", ".text_choice_button", function() {
           your code......
    });
});
于 2012-09-03T10:02:44.897 に答える
0
$(function(){
    $("body").click("a, div", function(){
        $("body").append("ping");
    });
});
于 2012-11-04T10:34:16.240 に答える
0

jquery を使用する「onclick」ハンドラに問題がありました。mousedown の方が信頼性の高いソリューションだと思います。私が見つけたより良いクリックをキャッチするようなものです。http://api.jquery.com/mousedown/

于 2012-10-19T09:40:53.727 に答える
0

私はいつもこのパターンを使っています。あなたも試してみてください。

$(element).click(function() {});

また、JavaScriptを使用するhtmlコードをここに投稿してください。

于 2012-11-01T13:14:05.567 に答える
-3

「ライブ」でやってみる

$(".text_choice_button").live('click', function(event) {
    event.preventDefault();
    var string = $(this).closest(".select_toggle_area").find("text_choice").val();
    $(this).closest(".select_toggle_area").find(".target_input").val(string);
    $(this).closest(".select_toggle_area").find(".toggle_choices").toggle();
});
于 2012-05-16T15:03:16.750 に答える