2013-07-31 42 views
0

我想在子iframe中使用jquery庫。父窗口包含jquery庫。 這是在iframe中在子iframe中使用來自父級的jquery

包括
$p=parent.window.$; 
$p(document).ready(function(){ 
     console.log($p('#bla').val()); 
     console.log($p('#searchedCity').val()); 
    } 
); 

$p('#bla').val()腳本 - 這我試圖讓位於iframe中輸入文本字段的值。現在它返回undefined

$p('#searchedCity').val() - 這是從父窗口輸入文本字段的值。並返回正確的值

當我包括jquery庫直接向iframe - $('#bla').val()工作正常。

我錯過了什麼?你可以幫我嗎?

+0

爲什麼你不想在iframe中添加jquery庫? –

+0

你應該加載iframe中的jquery libray,並嘗試給我bewlow給出的答案。 –

回答

0

那是因爲你的搜索元素$p('#bla')#bla在父容器。這是不存在there..load的jQuery目前iframe和使用$ ..

$p=parent.window.$; 
$p(document).ready(function(){ 
    console.log($('#bla').val()); 
    console.log($p('#searchedCity').val()); 
    } 
); 

,是的,你是調用這些函數時,父母的文件已準備就緒,其可能無法正常工作,因爲它應該..

$(document).ready(function(){ 
    console.log($('#bla').val()); 
    $p=parent.window.$; 
    console.log($p('#searchedCity').val()); 
    } 
); 
+1

所以沒有辦法沒有包括jQuery庫直接向iframe? – Undrooleek

+0

我猜沒有.... :) ..無論你嘗試從jquery的父文檔獲取iframe文本框值加載...沒有任何腳本在iframe本身.. – bipen

0

我不知道,如果它確實相同,但試試這個:

console.log($('#bla', p).val()); 
console.log($('#searchedCity', p).val()); 
+0

結果是一樣的:( – Undrooleek

0

試試這個:

$p=parent.window.$; 
    $p(document).ready(function(){ 
     console.log($('#bla').val()); 
     console.log($p('#searchedCity').val()); 
    } 
); 
相關問題