2011-08-29 67 views
0

我喜欢下面在我的HTML页面的链接:参数传递给javascript函数非常久远的回调

<a id="save_report" href="javascript:void(0);" title="Save Report" onclick="javascript:enterReportNameToSave(<?php echo $upload_count?>,<?php echo $startOffset;?>,<?php echo $affiliateId; ?>);">Save Report <img height="16" width="16" style="vertical-align: bottom;" src="/img/icn_export.gif" alt="export"></a> 

如,你可以看到,我需要一些参数发送到功能enterReportNameToSave同时,我还需要调用回调函数以处理弹出窗口。

我enterReportNameToSave()函数调用将是这样的:

function enterReportNameToSave(count,startOffset,user_id,f) 
{ 
    //Some logic to set a div element based on the parameter values 
    f()//This will be the implementation of my call function 
    { 
     //Here I need to invoke the popup logic 
     } 
} 

在这里,我很困惑与正确实施这一点,我的意思是实施方案的正确方法。请帮忙。

回答

0

希望你觉得这个有用。

function enterReportNameToSave(count,startOffset,user_id,f) 
{ 
$("#yourdivid").html("<h1>Show Loading bar or load up your actual html data here</h1>").load("use_this_if_data_needs_fetching_from_remote.php","count="+count+"&f="+f,function() { 
    alert("I am just a useless popup and have popped up after the div is populated"); 
}); 
} 
0

假设你在Javascript中有不同的回调函数:

onclick="javascript:enterReportNameToSave(<?php echo $upload_count; ?>, 
    <?php echo $startOffset; ?>, <?php echo $affiliateId; ?>, 
    <?php echo $callback_name; ?>);"> 

function f1(count, offset, uid) { 
    alert("count=" + count); 
}  
function f2(count, offset, uid) { 
    alert("offset" + offset); 
} 
// etc 

在PHP中可以作为进一步的参数回调函数的名称传递到您构建的onclick功能

onclick字符串的具体值是例如

onclick="javascript:enterReportNameToSave(10, 20, 1234, f1);" 

JavaScript函数enterReportNameToSave()样子:

function enterReportNameToSave(count, startOffset, user_id, f) { 
    // use parameters count, startOffset, user_id 
    // call callback function f: 
    f(count, startOffset, user_id); 
} 
+0

其实我想写一个事件处理程序,将与**的onclick **链接的情况下,somethig像**功能执行的东西(e){var popup_di_iid = e.target.title} **在那里我会保留我的弹出逻辑。但我也需要将其他参数传递给** enterReportNameToSave **函数。如何实现? – debaShish