-4

私の最初の投稿では、私が行くべき深さの量について確信が持てませんでした. jQueryの回答が投稿されて以来、私が取り組んできたことは次のとおりです。

ユーザーが一連のボタンから1つのhtmlボタンを選択してクリックし、一連のボタンから別のhtmlボタンを選択する必要があるタスクを実行しようとしています。

基本的に、最初のボタン選択の値をパラメーターとして、ユーザーが 2 番目のボタンをクリックしたときに実行される関数に渡したいと思います。私はJavaScriptを学んでいて、迷っています。

ありがとうございました

HTML:

<form id="scoreboard">
<div>
<input type="text" name="homeTeam" value="00" size="2"  "readonly" id="homeTeamScore"/>
<input type="button" value="+1" name="add1" id="homeAdd1" class="homeScore" onClick="calcScore(1)"/>
<input type="button" value="-1" name="neg1" id="homeNeg1" class="homeScore" onClick="calcScore(4)"/>
</div>
<div>
<input type="button" name="homeP1" id="homeP1" class="player" value="24" style="text-align:center;"/>
<input type="text" name="homeP1Score" value="0" size="2" style="text-align:center;"/>
</div>
<div>
<input type="button" name="homeP2" id="homeP2" class="player" value="44" style="text-align:center;"/>
<input type="text" name="homeP2Score" value="0" size="2" style="text-align:center;"/>
</div>
</form>

Javascript:

function calcScore(amount) {
if(amount==1) {scoreboard.homeP1Score.value++;scoreboard.homeTeam.value++;}
else if(amount==4) {scoreboard.homeP1Score.value--;scoreboard.homeTeam.value--;}
}

$('.player').click(function() {
//initialize the second button listener
var data = $(this).attr('data');
$('.homeScore').click(function() {
    function addHomeScore(data)
});
});
4

3 に答える 3

2

jQuery の使用:

$('#buttonId').click(function() {
    //initialize the second button listener
    var data = $(this).attr('data');
    $('#button2Id').click(function() {
        yourFunction(data);
    });
 });

この方法は、JavaScript スコープを使用してグローバルを回避するため、優れています。JavaScript (特に jQuery を使用) では複数のスレッド/関数が同時に実行される場合があるため、グローバルで問題が発生するのは非常に簡単です。また、テストが非常に難しく、安全ではありません。

于 2013-02-21T20:29:45.793 に答える
1

生の JavaScript では:

HTML:

 <button class="button1" onclick="saveValue()" />
 <button class="button2" onclick="callMethod()" />

JavaScript:

 myGlobalVariable = null;
 function saveValue(){
       myGlobalVariable = "Value That Was Selected";
 }

 function callMethod(){
       alert(myGlobalVariable + "I HAZ ACCESS TO GLOBALS!!!!");
 }


jQuery の場合:

HTML:

     <button class="button1" />
     <button class="button2" />

JavaScript:

     myGlobalVariable = null;
     $('button.button1').click(function(){
             myGlobalVariable = "Value That Was Selected";
     });
     $('button.button2').click(function(){
            alert(myGlobalVariable + "I HAZ ACCESS TO GLOBALS!!!!");
     });
于 2013-02-21T20:28:31.190 に答える
0

js でいくつかのグローバル変数をセットアップします。次に、各ボタンで、グローバル変数を変更するいくつかの onClick イベントをセットアップします。次に、次のボタンをクリックすると、グローバル変数の値を確認できます

<button onclick="myFunction()">Click me</button> 
于 2013-02-21T20:27:42.683 に答える