2013-06-25 3 views
-3

Я пытаюсь сделать переменную int автоматически увеличивать себя на 1 каждый раз, когда я нажимаю кнопку aspx.Приращение +1 для переменной int

protected void btn_Click(object sender, EventArgs e) 
    { 
     int UserID = 0; 
     for(int i =0; i<9999; i ++) { 
     userID++; 
     } 

    lbNumber.Text = UserID.toString(); 
} 

Он всегда выходит как 9999. Я хотел бы, чтобы это было 1 на первом щелчке, 2 на втором щелчком мыши и т.д. Извините за вопрос такой простой вопрос, но я не знаю, как и что искать на этом форуме, чтобы получить правильный ответ.

+2

Так же, как примечание стороны, ваш код делает именно то, что вы сказали ей. Он зацикливается от 0 до 9999, а затем возвращается 9999. Вы должны сделать некоторые базовые учебники по программированию. Они были бы полезны. –

+2

Вы увеличиваете переменную с именем 'userID'. В большинстве языков это отличается от 'UserID'. Однако не уверен в ASP.NET. –

ответ

1

Цикл for будет проходить до тех пор, пока он не достигнет 9999 каждый раз. Она должна быть заменена на if заявление так, что он останавливается на 9999.

Вам необходимо восстановить предыдущее значение числа:

protected void btn_Click(object sender, EventArgs e) 
{ 
    int userID = Convert.ToInt32(lbNumber.Text); 
    if (userID < 9999) 
    { 
     userID++; 
    } 

    lbNumber.Text = userID.ToString(); 
} 

Кроме того, корпус имеет значение в C# для имен переменных. Обязательно всегда используйте один и тот же случай, как показано в приведенном выше коде.

0

Вы можете использовать Javascript или jQuery для достижения этого.

Ниже подходит для JQuery:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.js"></script> 
<div id="likes"> 
<span class="figure"></span> 
</div> 
<button type="button" id="like" >Like</button> 
<script type="text/javascript"> 
var clicks = 0; $("#like").click(function(){ clicks++; $('.figure').html(clicks);}); 
</script>