将表单提交的结果返回到cakephp中的iframe中
如何在cakephp中将表单提交的结果返回到iframe将表单提交的结果返回到cakephp中的iframe中,cakephp,iframe,Cakephp,Iframe,如何在cakephp中将表单提交的结果返回到iframe 另一个问题是,如何为控制器动作循环中的每次迭代向iframe返回一些消息。假设它迭代10次,所以在每次迭代之后,它会立即显示“迭代1已完成”之类的消息。。。在iframe…中,我认为您需要研究一种AJAX方法。您可以使用Javascript将数据插入iframe,但是视图和控制器之间的迭代交互最好通过AJAX连接完成 这是我采取的又快又脏的方法。 在控制器操作结束时: App::import('Helper', 'Javascri
另一个问题是,如何为控制器动作循环中的每次迭代向iframe返回一些消息。假设它迭代10次,所以在每次迭代之后,它会立即显示“迭代1已完成”之类的消息。。。在iframe…中,我认为您需要研究一种AJAX方法。您可以使用Javascript将数据插入iframe,但是视图和控制器之间的迭代交互最好通过AJAX连接完成 这是我采取的又快又脏的方法。 在控制器操作结束时:
App::import('Helper', 'Javascript');
$javascript = new JavascriptHelper();
echo($javascript->object($returnVals)); // allows passing of array
exit(1);
在视图中,您需要捕获返回值并使用JSON.parse进行解析:
<snip-->
if(xmlHttp)
{
xmlHttp.open("POST",actionURL,true);
xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xmlHttp.onreadystatechange = function()
{
if (xmlHttp.readyState == 4 && xmlHttp.status == 200)
{
doAction(xmlHttp.responseText,zone);
}
<--snip>
function doAction(props,zone)
{
var newProps = JSON.parse(props);//needs to be parsed into a JS object.
//other stuff here
}
if(xmlHttp)
{
open(“POST”,actionURL,true);
setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xmlHttp.onreadystatechange=函数()
{
if(xmlHttp.readyState==4&&xmlHttp.status==200)
{
doAction(xmlHttp.responseText,zone);
}
功能动作(道具、区域)
{
var newProps=JSON.parse(props);//需要解析为JS对象。
//这里还有其他东西
}
谢谢leo……我知道我需要使用ajax……但我只想知道,如何做到这一点,比如说我提交了一个表单,它运行了一个控制器操作,那么现在,我如何从这个控制器操作向iframe发送$result,以及如何将这个$result提取到iframe……而不知道您到底想做什么的细节,这很难说。我想如果你必须使用iframe,那么你需要维护它的句柄,并使用javascript将适当的信息插入其中。不过,我忍不住想,你在给自己制造麻烦。