2013-05-09 21 views
0

我在iframe中有一個普通的html表格,我想從父頁面訪問它(是的,他們在域和服務器上) 我試過每一個種類:jQuery:點擊位於iframe中的表格

$("#Iframe").contents().find("#mytable td"); 

我沒有感覺到它檢測到我的表格單元格或表格。 我想確實要做一個事件。

 $("#mytable td")   
     .mousedown(function() 
     { 
      isMouseDown = true; 
      $(this).toggleClass("highlighted"); 
      isHighlighted = $(this).hasClass("highlighted"); 
      return false; 
     }) 
     .mouseover(function() { 
      if (isMouseDown) { 
      $(this).toggleClass("highlighted", isHighlighted); 
      } 
     }) 

這個事件在單個頁面上完美地工作在css風格的鏈接上,但是在使用iframe時應該怎麼做呢?在iframe中檢測我的表格的正確句子是什麼?

+0

'parent.opener.document.getElementById( 「street1」 ).value = street1;'你可以像這樣設置iframe的父元素 – dreamweiver 2013-05-09 14:03:05

+0

很多建議[here](http://stackoverflow.com/questions/364952/jquery-javascript-accessing-contents-of-an-iframe ?rq = 1) – DOK 2013-05-09 14:21:26

回答

0

確保選擇器#Iframe實際上在您的iframe元素上作爲ID。

,那麼你可以設置這樣的事情在你的JavaScript ...

var mframe = $('#Iframe').contents(); 
var mtable = mframe.find('#mytable td'); 

然後去鎮mtable,所有這些都在$(window).load(function(){...}

+1

正在使用$(window).load將確保事件在加載iframe之後進行綁定? iframe加載和文檔加載是兩件不同的事情。並且請注意,如果iframe來自外部域,它將不起作用。 – 2013-05-09 14:28:49

+0

你是否可以直接控制你的iframe內容(即它來自你自己的服務器?) – blackhawk 2013-05-13 13:28:09

+0

感謝您的答案,但它仍然無法正常工作。當我的iFrame準備就緒時,我可以觸發警報,但當我的表準備就緒時不會觸發警報。在我正在處理的網站中令人討厭的事情是,點擊下拉列表時,我的表格被啓動。否則沒有表格。但是有時我可以在桌子準備就緒時觸發警報,但表格不顯示。任何想法如何解決這個問題? – user2366493 2013-05-13 13:38:18