2010-06-22 2 views
0

Мне нужно сделать кнопку, которая увеличивает и уменьшает переменную. Когда вы нажимаете ссылку, она увеличивает значение переменной в ссылке href. Когда вы нажимаете другую ссылку, она уменьшает переменную в ссылке href. Переменная может переходить только к последнему номеру в указанном массиве. PXP будет встроен вокруг него. Есть идеи?Javascript href link counter

<script type="text/javascript"> 
var counter = 0; 
document.write('<button onclick="counter++">Increment</button>'); 
document.write(counter); 
</script> 

Это мерзость, которую я знаю, и она использует кнопку.

+3

... и ваш вопрос ...? – Palantir

+0

:-) Да ладно, серьезно? – helle

+0

Отвращение ** и ** он использует кнопку, ROTFL - и я даже не знаю, почему ... – tvanfosson

ответ

2

Я собираюсь сделать много предположений, в том числе, что вы можете использовать jQuery. Это можно сделать без него, но с ним проще писать. Единственный реальный jQueryness, который я использую, - это применить обработчики - отрегулируйте это по мере необходимости для другой структуры или используйте чистый javascript. Кроме того, я предполагаю, что базовая ссылка не имеет каких-либо существующих параметров запроса и что вы добавляете счетчик в качестве параметра запроса. Опять же, при необходимости отрегулируйте, как вы хотите, чтобы URL-адрес был построен.

<a class="link" href="http://example.com/somecontroller/someaction">Click Me</a> 
<button class="increment">Increment</button> 
<button class="decrement">Decrement</button> 

<script type="text/javascript"> 
    $(function() { 
     var counter = 0; 
     var max = <?php echo count($arr) >; 
     $('button.increment').click(function() { 
      ++counter; 
      if (counter > max) counter = max; 
     }); 
     $('button.decrement').click(function() { 
      --counter; 
      if (counter < 0) counter = 0; 
     }); 
     $('a.link').click(function() { 
      window.location = $(this).attr('href') + '?count=' + counter; 
      return false; // important to stop the default link action 
     }); 
    }); 
</script> 
+0

Я искал что-то более похожее на это .. любые идеи? < // декремент everyclick, изменяющий значение $ lastnumber из последнего числа в массиве. > // увеличивать каждый элемент, изменяя значение $ counter от 1 до последнего числа в массиве. – ThomasReggi