2013-01-12 33 views
1

我正在使用jquery-ui來組織div並在服務器上保存更改。腳本不能在「if」中使用不同數量的數字

爲此,我從直接參與的2個div中讀取了一些信息,並通過ajax將它們發送到另一個頁面。

所以,我有一個代碼,它讀取在更新dom後拖動div的attr「pos」,並移動div後的div。 如果第一個屬性的attr「pos」是第二個屬性的>,它會觸發此腳本。

if (ui.item.attr('pos') > ui.item.next().attr('pos')) 
     { 
      $.ajax({ 
      type: "POST", 
      url: "muovi.php", 
      data: { in:ui.item.attr('ids'), pos1:ui.item.attr('pos'), out:ui.item.next().attr('ids'), pos2:ui.item.next().attr('pos')}, 
      success: function(response){ 

       $.ajax({ 
        url: "", 
        context: document.body, 
        success: function(s,x){  (-> Reload the page) 
        $(this).html(s); 
        } 
       }); 

       $(".overlay").css("visibility","hidden"); (-> to understand if something went wrong) 
       } 
     }); 
    } 

的問題是,如果我有喜歡的div這些的:

[...] 
<div class="game" pos="7" ids="something"> 
<div class="game" pos="8" ids="something else"> 
<div class="game" pos="9" ids="~"> 
<div class="game" pos="10" ids="~"> 
<div class="game" pos="11" ids="~"> 
[...] 

如果我移動POS機1-9一個div與POS 1-9一個div我沒有得到任何錯誤,相同的如果div位於10-99。 但是,如果我嘗試將一個10-99 div移回div 1-9,腳本似乎不起作用。

所以,如果有不同數量的數字,我有這個問題。這是否可以解析而不需要編輯「pos」字段? 問題是否清楚?我應該添加更多的信息嗎?

回答

1

您需要將字符串轉換成數字與parseInt執行你比較之前:

if (parseInt(ui.item.attr('pos')) > parseInt(ui.item.next().attr('pos'))) 
+0

我剛纔發現了這一點。謝謝! – user1722791

相關問題