java中关于页面弹出对话框问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中关于页面弹出对话框问题相关的知识,希望对你有一定的参考价值。

恳请大家帮忙指点一下,谢谢大家了!!!我想在弹出对话框后,选择确定或撤销 分别进入不同的页面,可按照下面的代码,不管选哪个都进得a.jsp页面,是代码错了吗?
JOptionPane.showConfirmDialog(null, "确定不通过此次家长会申请吗?", "提示", JOptionPane.OK_CANCEL_OPTION);
if(confirm("OK/CANCEL")==true)

request.getRequestDispatcher("/AppAudit.jsp").forward(request, response);
else
request.getRequestDispatcher("/a.jsp").forward(request, response);

if(JOptionPane.showConfirmDialog(null, "确定不通过此次家长会申请吗?", "提示", JOptionPane.OK_CANCEL_OPTION)==JOptionPane.OK_CANCEL_OPTION)==JOptionPane.YES_OPTION)或者下面

if(JOptionPane.showConfirmDialog(null, "确定不通过此次家长会申请吗?", "提示", JOptionPane.OK_CANCEL_OPTION)==0)
request.getRequestDispatcher("/AppAudit.jsp").forward(request, response);
else
request.getRequestDispatcher("/a.jsp").forward(request, response);

方法签名:
showConfirmDialog

public static int showConfirmDialog(Component parentComponent,
Object message,
String title,
int optionType,
int messageType)
throws HeadlessException
调用一个由 optionType 参数确定其中选项数的对话框,messageType 参数确定要显示的图标。messageType 参数主要用于提供来自外观的默认图标。
参数:
parentComponent - 确定在其中显示对话框的 Frame;如果为 null 或者 parentComponent 不具有 Frame,则使用默认的 Frame。
message - 要显示的 Object
title - 对话框的标题字符串
optionType - 指定可用于对话框的选项的整数:YES_NO_OPTION 或 YES_NO_CANCEL_OPTION
messageType - 指定此消息种类的整数;主要用于确定来自可插入外观的图标:ERROR_MESSAGE、INFORMATION_MESSAGE、WARNING_MESSAGE、QUESTION_MESSAGE 或 PLAIN_MESSAGE
返回:
指示用户所选选项的整数

源码如下:
public class JOptionPane extends JComponent implements Accessible

public static final int YES_OPTION = 0;
/** Return value from class method if NO is chosen. */
public static final int NO_OPTION = 1;
/** Return value from class method if CANCEL is chosen. */
public static final int CANCEL_OPTION = 2;
/** Return value form class method if OK is chosen. */
public static final int OK_OPTION = 0;
/** Return value from class method if user closes window without selecting
* anything, more than likely this should be treated as either a
* <code>CANCEL_OPTION</code> or <code>NO_OPTION</code>. */
public static final int CLOSED_OPTION = -1;
参考技术A
if(confirm("OK/CANCEL")==true)
改成:if(confirm("OK/CANCEL"))因为confirm本身已经是一个boolean的类型。
还有你下面的页面跳转用window.location.href("http://www.163.com");
用不用这个无所谓,但是你上面的confirm一定要改的。
参考技术B 不懂~ 你的这个的C/S应用还是B/S应用哦? 貌似像C/S

java selenium 操作弹出对话框

Web 开发人员通常需要利用JavaScript弹出对话框来给用户一些信息提示, 包括以下几种类型

 

阅读目录

 

对话框类型

1.  警告框: 用于提示用户相关信息的验证结果, 错误或警告等

技术分享

2. 提示框: 用于提示用户在当前对话框中输入数据,一般需要用户单击取消或者确认按钮

技术分享

3. 确认框: 用于提示用户确认或者取消某个操作,一般需要用户单击取消或者确认按钮

技术分享

 

测试页面

用如下页面为例进行讲解,  包括了警告框,提示框,确认框

http://sislands.com/coin70/week1/dialogbox.htm

技术分享

 

 

Selenium 操作对话框的代码

 

    public static void testAlert(WebDriver driver)
    {
        String url="http://sislands.com/coin70/week1/dialogbox.htm";
        driver.get(url);
        
        WebElement alertButton = driver.findElement(By.xpath("//input[@value=‘alert‘]"));
        alertButton.click();
        
        Alert javascriptAlert = driver.switchTo().alert();
        System.out.println(javascriptAlert.getText());
        javascriptAlert.accept();
    }
    
    public static void testPrompt(WebDriver driver) throws Exception
    {
        String url="http://sislands.com/coin70/week1/dialogbox.htm";
        driver.get(url);
        
        WebElement promptButton = driver.findElement(By.xpath("//input[@value=‘prompt‘]"));
        promptButton.click();
        Thread.sleep(2000);
        Alert javascriptPrompt = driver.switchTo().alert();
        javascriptPrompt.sendKeys("This is learning Selenium");
        javascriptPrompt.accept();    
        
        System.out.println(javascriptPrompt.getText());
        
        javascriptPrompt=driver.switchTo().alert();
        javascriptPrompt.accept();
        
        Thread.sleep(2000);
        promptButton.click();
        javascriptPrompt=driver.switchTo().alert();
        javascriptPrompt.dismiss();
        Thread.sleep(2000);
        javascriptPrompt=driver.switchTo().alert();
        javascriptPrompt.accept();
    }
    
    public static void testConfirm(WebDriver driver) throws Exception
    {
        String url="http://sislands.com/coin70/week1/dialogbox.htm";
        driver.get(url);
        
        WebElement confirmButton = driver.findElement(By.xpath("//input[@value=‘confirm‘]"));
        confirmButton.click();
        Thread.sleep(2000);
        Alert javascriptConfirm = driver.switchTo().alert();
        javascriptConfirm.accept();
        Thread.sleep(2000);
        javascriptConfirm = driver.switchTo().alert();
        javascriptConfirm.accept();
    }

 

 

 

以上是关于java中关于页面弹出对话框问题的主要内容,如果未能解决你的问题,请参考以下文章

java selenium 操作弹出对话框

MFC 中关于Edit控件问题

java怎么实现登录成功后页面跳转并弹出修改密码的对话框

java selenium 操作弹出对话框

jsp调用java方法导出excel为啥会弹出保存或下载的对话框,调用完之后直接将文件保存到指定路径下即可。

java jxl 导出excel出现代码走完 页面不出现下载对话框