0

があり、<div class="foo">Foo</div>2つの入力フィールドがあります。

  1. <input type="submit" class="text_field" name="input_one" value="">
  2. <input type="submit" class="text_field" name="input_two" value="">

<div>Foo</div>クリックしてフィールド#1に値を入力しFoo、フィールド#2に値を入力できるようにしたいと思いますBar。(このアイデアを外挿して、多くの異なるdiv、したがって多くの異なる値の組み合わせを組み込みます。)jQueryを使用してこれを行うにはどうすればよいですか?

これまでのところ、次のようなことをするのに問題はありません。

jQuery(function () {
$('div.foo').click(function (e) {

    var foo = $(this).text();

    $("input.text_field").val(foo);
});
});​

これは、divをクリックして、1つのテキストフィールドにタグ間のテキスト値(「Foo」)を入力する場合に機能します。これは良いスタートであり、すべてです...しかし、私はこれに慣れていないので、2つの異なるテキストフィールドに2つの異なる値「Foo」と「Bar」を入力するのに最適な方法を考えていました。divでこの効果に何かを設定し、name="Bar"その名前の値にアクセスして2番目のテキストフィールドに挿入する方法はありますinput_twoか?考え、コメント、考慮事項に感謝します、ありがとう!

4

2 に答える 2

1

変な質問ですが、何をする必要があるか説明できますか? つまり、あなたはやりたいことを投稿しましたが、なぜそれをしたいのですか? Bar と Foo が何であるかは明確ではありません。送信ごとに定義済みの値ですか? 値はdivに依存しますか(複数のdivがあり、クリックされたdivに応じて入力を設定する必要があるとしましょう)

必要なタグに任意の属性を配置し、 $([selector]).attr('attr_name') を使用してそれらにアクセスして値を取得できます。html5 では、いくつかの「data-」属性を定義してhttp:// html5doctor.com/html5-custom-data-attributes/

編集:次のようなものを持つことができます

<div class='clickeable' data-input1='foo' data-input2='bar'></div>
<div class='clickeable' data-input1='baz' data-input2='xxx'></div>

そしてjs

$('.clickeable').click(function(){
  obj = $(this);
  $('input[name=input_1]').val(obj.attr('data-input1'));
  $('input[name=input_2]').val(obj.attr('data-input2'));
})

次に、jsは汎用であり、任意の値で必要な数のdivを追加できます

于 2012-10-06T03:50:44.580 に答える
0

ID セレクターを使用: http://api.jquery.com/id-selector/

<div class="foo">

    <input type="submit" id="one" class="text_field" name="input_one" value=""> 
    <input type="submit" id="two" class="text_field" name="input_two" value="">
</div> 


jQuery(function () {
$('div.foo').click(function (e) {    
    var foo = $(this).text();    
    $("#one").val(foo);
    $("#two").val("Bar");
});
});​
于 2012-10-06T03:44:46.683 に答える