我剛纔一直在努力與這一點,並找到一種方法來顯示看中箱的iframe中的結果,我不擅長使用Ajax使用jQuery任何方式在這裏不用卻又如此需要一個PHP解決方案,我第一個答案!!:
需要在jquery.fancybox js文件中做一點小小的調整,我使用的是jquery.fancybox.1.3.4.pack.js
。用任何編輯器打開它,並搜索:name="fancybox-frame
:完蛋了,應該只有這找到了一個實例,會看起來像:
name="fancybox-frame'+(new Date).getTime()+'"
現在要重命名全:
fancybox-frame'+(new Date).getTime()+'`
到任何你想,我只是叫它:"fbframe"
並保存該文件。現在添加了jQuery設置,格式如下,它應該很好地工作:
//activate jquery on page load and set onComplete the most important part of this working
$(document).ready(function(){
$("#a").fancybox({
'width' : '75%',
'height' : '100%',
'autoScale' : false,
'type' : 'iframe',
'onComplete':function(){$('#formid').submit();},
});
});
//function called onclick of form button.
function activatefancybox(Who){
$("#setID").val(Who); // i set the value of a hidden input on the form
$("#a").trigger('click');//trigger the hidden fancybox link
}
// hidden link
<a id="a" href='#'></a>
// form to submit to iframe to display results.
// it is important to set the target of the form to the name of
// the iframe you renamed in the fancybox js file.
<form name='iduser' id='iduser' action='page.php' target='fbframe' method='post'>
<input />
<input />
<input id='setID' type='hidden' name='userid' value='' />
<input type="button" onClick='testfb(123)' />
</form>
的proccess是:
點擊提交 - >通話功能 - >功能點擊FB鏈接 - >的onComplete
onComplete FB加載後提交表單到iframe!完成。
請注意我已經從我目前的項目中剔除了這些,並且只編輯了某些必需的部分,我仍然是一個業餘編碼器,如果可以的話,會推薦使用ajax。也只使用FB1! FB2現在可用。
我想最後我們可能會有答案。該項目現在已經走了很久,但這肯定是我想要的方式,我不知道這個插件存在,謝謝加蘭! – nickmorss 2010-03-11 12:35:44
非常好!我希望這能幫助下一個嘗試做同樣事情的人。很高興看到FancyBox包含此功能,但此解決方案在此期間將運行良好。 – 2010-03-11 21:53:50