小程序JavaScript通信

小程序JavaScript通信,java,javascript,html,applet,Java,Javascript,Html,Applet,在我的网页上,我正在运行一个小程序,为了警告用户对小程序的某些输入,我正在使用将错误打印到html页面。为了做到这一点,我使用javascript小程序通信。下面是Javascript的代码: var计数器=0; 函数RemoveAppletErrorMessage() { var AppletErrorTag=document.getElementById(“AppletErrorMessages”); if(AppletErrorTag!=null) { document.body.rem

在我的网页上,我正在运行一个小程序,为了警告用户对小程序的某些输入,我正在使用将错误打印到html页面。为了做到这一点,我使用javascript小程序通信。下面是Javascript的代码:


var计数器=0;
函数RemoveAppletErrorMessage()
{
var AppletErrorTag=document.getElementById(“AppletErrorMessages”);
if(AppletErrorTag!=null)
{
document.body.removeChild(AppletErrorTag);
}
}
函数updateWebPage(个)
{
如果(计数器>=1)删除AppletErrorMessage();
var parag=document.createElement('P');
段落setAttribute(“id”、“AppletErrorMessages”);
var txt=document.createTextNode;
附件(txt)段;
文件.正文.附件(第7段);
计数器++;
}
在这里,当使用以下代码单击JButton时,Java小程序将调用Javascript函数updateWebPage(s)函数:

if(jso != null && !errorMessage.isEmpty())
try {
    jso.call("updateWebPage", new String[] {errorMessage});
    return;
}
catch (Exception ex) { ex.printStackTrace(); }

在沟通方面,一切都很好。但是,当第二次单击JButton时,我试图通过从updateWebPage调用RemoveAppletErrorMessage()清除错误消息。似乎每次我点击JButton时,错误消息都会附加到我不想要的网页上。我试图用.innerHTML=''清除它,但它一开始不起作用,因此我将策略更改为添加一个节点并检查该节点是否存在,清除该节点并再次添加。可能出了什么问题?

我会打开一个id为AppletErrorMessages的div,并在updateWebPage()函数中使用jQuery,如下所示(例如,每次都停止创建新段落)


可能是您在Java中添加了errorMessage变量?

为了更快地获得更好的帮助,请发布一个。在public void actionPerformed(ActionEvent arg0)函数的末尾,我使用了表达式errorMessage=“”;我希望它能清除字符串的内容。打开开发者工具,检查你的段落是否真的从DOM中删除了。另外,在updateWebPage方法上放置一个断点,以查看您是否获得了正确的s值。我确实添加了错误消息,似乎表达式errorMessage=“”不会使字符串变为空字符串。此外,我还将javascript代码更改为函数updateWebPage{var parag=document.getElementById(“AppletErrorMessages”);parag.innerHTML='';parag.innerHTML=s;}
function updateWebPage(s)
{
  $("#AppletErrorMessages").html(s);
}