2011-03-21 75 views
-1

如何將updateRating()函數中的評分變量傳入我的window.location.replace(url + rating)中,在我的對話框的「繼續」功能中?如何將變量傳遞給對話框功能?

這裏是我的代碼:

  <script type="text/javascript"> 

     $(document).ready(function(){ 
      $(".hireraccept").click(function(){ 
        $('.jRating').jRating(); 
        $("#dialog-rate").dialog("open"); 
        itervalue = $(this).attr("value"); 


        return false 

     }); 


     $("#dialog-rate").dialog({ 

      autoOpen: false, 
      resizable: false, 
      height: 200, 
      width: 200,   
      modal: true, 
      buttons: { 
       "Proceed": function(){ 

        window.location.replace("{{ domain_url }}/workroom/accept/" + itervalue +"/" + rating); 
        $(this).dialog("close"); 

       } 

      } 


     }); }); </script> 






    <script> 
    function updateRating(rate,proceed){ 
    goodtogo = proceed; 

    rating = rate; 

} 
</script>  
+0

這是神祕的updateRating()函數在哪裏? – mattsven 2011-03-21 02:54:30

+0

@Nex滾動一路下來 – 2011-03-21 03:00:12

+0

@Hamish我怎麼接受,當他們不是在我看來的答案? – 2011-03-21 04:07:04

回答

2

這裏的問題是,你的變量goodtogorating是變量,這些變量函數的局部updateRating()。你所要做的就是在全球範圍內宣佈它們。

var goodtogo, rating; 
function updateRating(value) { 
    goodtogo = true; 
    rating = value; 
} 
+0

它們不屬於同一個腳本標記有關係嗎? – 2011-03-21 03:20:33

+0

不是。全球化是全球性的。 :) – 2011-03-21 05:09:27

0

一個選項是創建一個全局變量。在適當的地方將值分配給它。然後從「對話框」內訪問它

+0

如果它們不是來自相同的腳本標記,它有幫助嗎?一個是在document.ready標記下,另一個函數不是.. – 2011-03-21 03:20:11