php
  • javascript
  • jquery
  • ajax
  • 2011-05-24 3 views 1 likes 
    1

    У меня есть цикл в то время как мой PHP страницу, где я смотрю следующее ...PHP Javascript Variable проблема

    print $divLeft.strip_tags($row->twitterUser)."?size=normal\"/><br \/>".$row->twitterUser.$divRight."<a href='javascript:void(0);' id='vote_$row->id' class='getPoint'>Get " .$row->coff. "<input type='hidden' value='$row->coff' id='credoff'/> credit(s)</a><br /></div>$clearDiv</div></div>"; 
    

    У меня есть значение, установленное в моем скрытом поле, я затем вызвать в моей JavaScript ...

    {   
        var theid = $(this).attr("id"); 
        var onlyID = theid.split("_"); 
        var onlyID = onlyID[1]; 
        credoff = $("#credoff").val(); 
    
    
        $.ajax({    
         url: 'do.php', 
         type: 'POST',   
         data: "userID=" + onlyID, 
         success: function(data) { 
          if(data != "success1" && data != "success5") { 
           $("#" + theid).text(data); 
          }else{ 
    
           $("#thediv_" + onlyID).fadeOut("slow"); 
           $('#creditsBalance').fadeOut("slow"); 
           newbalance = parseInt($('#creditsBalance').text()); 
    
          if(data != "success5") { 
           alert('Credits offered = '+credoff); 
    

    Единственное, в моем Javascript его захвата самого высокого «credoff» значение переменной на странице, а не один нажал на, это имеет смысл?

    +0

    Существует проблема отступа или вы пропустили}, закрывающей еще – morgar

    +0

    я изменил вход цикла от id к классу и попробовал 'credoff = $ (this) .children (' input.credoff: hidden '). val()' , который теперь возвращает неопределенные, я также пробовал 'var credOff = $ (это) .find ('вход') вал();». который разбивает мой JS и останавливает остальную часть кода, как предупреждение и исчезает при выполнении ... – Jack

    +0

    что находится в этом «этом»? Как вызвана функция? –

    ответ

    0

    Во-первых, $ ('# credoff') является идентификатором ... и идентификаторы уникальны для страницы. Во-вторых, если было несколько (и правильно построено с помощью селектора CSS), способ, которым вы вызываете $ ('# credoff'), даст вам только значение первого, поскольку вы не связываете его с цель события.

    Поскольку это выглядит конструктивно, как вход является ребенок из (что странно, тоже, кстати), вам нужно использовать селектор, как это, чтобы получить credOff:

    $('.getPoint').click(function(){ 
        // properly associated with the event target. 
        var credOff = $(this).find('input').val(); 
        // etc. 
    } 
    
    0

    Элемент идентификаторы должны быть уникальным на всей странице; если это не так, то попытка выбрать по ID не определена. Лучше всего использовать что-то вроде этого:

    <input type="hidden" ... class="credoff" /> 
    

    , а затем в яваскрипта что-то вроде этого:

    credoff = $(this).children('input.credoff:hidden').val() 
    
    +0

    Ahh Я полностью забыл, спасибо Dereleased! – Jack

    +0

    Это возвращает Undefined, возможно ли, что я могу дать входное имя и использовать var credoff = getelementbyname (credoff) .value; ? – Jack

    +0

    Nevermind, попробовал это, и он по-прежнему возвращает undefined ... – Jack

    Смежные вопросы