2016-08-22 9 views
0

ユーザの選択に基づいて入力値を変更したい。ここでjqueryによる選択に基づいた入力値の変更

 <input type="number" class="minimum" name="minimum" /> 
        <div>0</div> 
        <div onclick="update('minimum')">$50,000</div> 
        <div>$100,000</div> 
        <div>$250,000</div> 
        <div>$500,000</div> 
        <div>$1,000,000</div> 
        <div>$10,000,000</div> 

私は、ユーザーがdivタグをクリックすると、入力値が変更されることで値を選択することができます最小という名前の入力を持っています。

divをクリックすると、この関数は入力値を更新します。

 function update(field){ 
     $('input[name=minimum]').val('50000'); 

    } 

私が望むのは、これがすべての部門で使用する柔軟性があることです。

最小が関数に渡されるフィールド値に置き換えられ、[名前=最小]。

val( '50000')ここで、は、関数を実行するdivの値に置き換えられます。

これは可能ですか?

+0

なぜ関数は 'field'引数を使用しませんか? – Barmar

答えて

0

は、あなたのインラインイベントハンドラを削除し、代わりに使用します。

$(document).ready(function() { 
    $('div').click(function() { 
    $('input[name=minimum]').val(parseInt($(this).text().replace(/[^0-9\.]+/g,""), 10)) 
    }) 
}); 

jsFiddle example

これは、テキスト文字列を受け取り、入力に使用する番号に変換します。また、$('div')より具体的なセレクタを使用して、ページのすべてのdivをターゲティングすることもできます。

+0

'$'と '、'の文字を値に入れる前にHTMLから削除する必要があります。 – Barmar

+0

@Barmar - updated – j08691

0

友人は私が間違っていたことを教えてくれました。

 function update(field){ 

     $('input[name=' + field + ']').val('50000'); 
     //alert (field); 
    } 

これが機能するようになりました。

関連する問題