2012-03-01 30 views
0

我試圖打開一個顏色框含參數(序列化形式)的URL,這是我的代碼:顏色框不發送的URL參數

$('a.mapLink').click(function(event) { 
     event.preventDefault(); 
     var data = $('#currentSelection').serialize(); 
     alert($(this).attr('href') + "?" + data); 
     $.colorbox({ href: $(this).attr('href') + "?" + data , iframe: true, width: '800px', height: '600px' }); 
}); 

警報顯示此:

/controller/action?Adults=2&Minors=0&StartingDate=2013-03-01&ReturningDate=2013-03-31 

這是正確的,但隨後的參數不發送到由顏色框的服務器,這是控制檯輸出:

XHR finished loading: "http://www.server.com/controller/action". 

我不知道爲什麼參數沒有被髮送到服務器我跟着this previous question,但我看不出我在做什麼差異,如果有人知道如何解決這個問題,我會很感激。

如果我打開控制檯把這個:

$.colorbox({href:"/controller/action?Adults=2&Minors=0&StartingDate=2013-03-01&ReturningDate=2013-03-31", iframe:true, width:"800px", height:"600px"}); 

它的作品,因爲我加載谷歌地圖,它可以是triky所以我不會使用POST和AJAX精細

PS我決定把它作爲一個IFRAME

+0

看看通過顏色框源,看看如果它操縱url – charlietfl 2012-03-01 01:04:55

+0

而不是查看源代碼,只需檢查文檔以查看iframe的src是什麼。如果這是正確的,你會知道問題不在iframe中,如果它是錯誤的,你可以仔細檢查,看看你的格式化可能會有什麼問題。 – Jack 2012-03-01 23:10:59

+0

我意識到所有的選項都被忽略了,如果我的錨點有一個hfer =「something.html」,那麼顏色框會打開,而不是在對象中定義的href:$ colorbox({href:'ignored.html',iframe:真正}),它打開AJAX而不是iframe – 2012-03-02 17:38:43

回答

0

,如果你試試這個?:發生什麼事

$('a.mapLink').click(function(event) { 
     event.preventDefault(); 
     var data = $('#currentSelection').serialize(); 
     var urlString = "" + $(this).attr('href') + "?" + data; 
     alert(urlString); 
     $.colorbox({ href: urlString , iframe: true, width: '800px', height: '600px' }); 
}); 
+0

謝謝,但即使我把一個完整的字符串在href參數它被忽略 – 2012-03-02 17:49:01