2014-03-05 72 views
1

我很好奇如何解釋這個相同的教程,但我怎樣才能使用它將XML轉換爲PHP來顯示星星。 Tutorial使用XML將數字轉換爲星級評分

這裏是我的代碼:

<form action="xmlprocessad.php" method="POST" id="myform"> 
    <div class="step4-inputs"> 
     <input type="text" name="newrating"> 
      <span class="stars">**Class that displays stars** 
       <span></span> 
      </span> 
     </input 
    </div> 
</form> 

這裏是jQuery代碼:

$(function() {   
    $('.submit-btn3').click(function() { 
    $('p').html('<spanclass="stars">'+parseFloat($('input[name=newrating]').val())+'</span>'); 
      $('span.stars').stars(); 
     });   
     $('.submit-btn3').click(); 
    }); 

    $.fn.stars = function() { 
     return $(this).each(function() { 
      $(this).html($('<span />').width(Math.max(0, (Math.min(5, parseFloat($(this).html())))) * 16)); 
     }); 
    } 

出於某種原因,不過,它不會我的號碼轉換爲這個明星的形象,能有人請幫我理解爲什麼?謝謝!

+0

看起來你錯過了設置包含星星的背景圖片的CSS。 – jeroen

+0

@ jeroen我的錯不包括在內,但我確實有代碼。有什麼原因不顯示? – cheyneosy

+2

'spanclass'是一個錯字? – hjpotter92

回答

0

你只是缺少一個空間

$('p').html('<span class="stars">'+parseFloat($('input[name=newrating]').val())+'</span>'); 

這應該修復它。

編輯:

<form action="xmlprocessad.php" method="POST" id="myform"> 
    <div class="step4-inputs"> 
    <input type="text" name="newrating" /> 
    <span class="stars">**Class that displays stars**</span> 
    </div> 
</form> 

除此之外,你使用瀏覽器的控制檯來檢查功能實際上是叫什麼?我不是JS的專家,但是在嘗試調用它之前不應該聲明你的函數嗎?

+0

@hjpotter92它在運行該函數時會在控制檯中啓動,但似乎在我輸入一個數字時,例如,它不會根據該數字填充星號。它只是填補它作爲一個5星評級,我每增加一個評論。 – cheyneosy