2016-09-20 86 views
0

我已经有一个可用的PHP函数,可以输出几乎相同原型的JQuery UI对话框(MessageBox($ text,$ caption,$ flags),其中$ flags是一个unsigned int(可以像这样传递标志:MB_OK | MB_ICONWARNING )如何在PHP/JavaScript中实现等效的Win32函数MessageBox?

这是工作完美我的问题是如何从弹出的值返回? 它可以有OK,CANCEL,RETRY等,按钮,我想知道是否有可能知道哪个按钮已被按下客户端从PHP。 通常,功能应该返回1,如果确定已被按下,2如果取消已被按下,等等

我已经看过AJAX和定期的形式发布,但它似乎不可能更多信息:

$userInput = MessageBox("Would you like to delete this line?", "WARNING", MB_OKCANCEL | MB_ICONWARNING); 

(用于Win32函数见here

回答

0

我不知道如何工作的Win32函数,但我认为在JavaScript它也许这:

if (confirm('Would you like to delete this line?')) { 
    // Delete it! 
} else { 
    // Do something! 
} 
+0

是的,它可以工作,但并没有解决我的问题(Jquery UI对话框只是一个“缓冲”警报/确认),这是为了取回用户输入到PHP –

+0

好吧,来自客户端的ajax请求在确认条件下,服务器端不适合你? 类似的东西: if(confirm('您想删除此行吗?')){.post(“/ server_handler.php”,{id:123},function(data){alert( 'deleted complete。');}); } else { //做些事情! } –

+0

确认是有效的,但它对我们想要做的事情有限制,但也许我们太过雄心勃勃了。感谢您的帮助 –

0

AJAX和定期表格发布是你唯一的选择,真的。这就是客户如何与网络上的服务器交谈。你不能在PHP中真正“显示对话框” - 你正在用JavaScript(通过jQuery)来完成它。 JavaScript/jQuery代码将必须处理哪个按钮被点击并将其传回给PHP。以问题/答案格式回答更详细的问题。我建议尝试一下AJAX,看看你是否提出了一个更具体的问题,我们可以回答。

+0

我想要更有活力的东西,但经过一些更多的研究和答案后,似乎我们将不得不处理ajax并形成发布。无论如何,谢谢你的回答! –