0

私はすべて同じ仕事をしているが、単に異なる要素を対象としている 12 の機能を持っています。コードをクリーンアップして、単一の関数を作成する方法があるかどうかを確認しようとしています。

例:

    function incrementValue()
{
    var value = parseInt(document.getElementById('number').value, 10);
    value = isNaN(value) ? 0 : value;
    value++;
    document.getElementById('number').value = value;
}
function incrementValue2()
{
    var value = parseInt(document.getElementById('number2').value, 10);
    value = isNaN(value) ? 0 : value;
    value++;
    document.getElementById('number2').value = value;
}

基本的に、ボタンがクリックされるたびに、入力内の値が増加します。

HTML:

<input type="button" onclick="incrementValue()" value="VOTE" />
<a href="option1.html" title="More information"><img src="icon.png" /></a>

私は試しましたが、常に何かが壊れているようです:/何が間違っているのかわかりません。これに関する明確なチュートリアルが見つからないようです。誰かがチュートリアルを教えてくれれば、コードを作成して自分で答えることができます!

ありがとう

4

2 に答える 2

3

パラメータ化された関数が必要なだけのようです:

function incrementValue( target )
{
    var el = document.getElementById( target );
    var value = parseInt( el.value, 10);
    value = isNaN(value) ? 0 : value;
    value++;
    el.value = value;
}

次に、この関数を次のように呼び出すことができます

incrementValue( 'number' );
incrementValue( 'number2' );
// etc.
于 2013-07-01T08:43:52.097 に答える
0

このケースを処理するには、 Attribute Starts With Selectorを使用します。

$("input[id^=number]")
于 2013-07-01T08:45:28.883 に答える