使用f:Ajax标记时,Ajax在internetexplorer中无法正常工作

使用f:Ajax标记时,Ajax在internetexplorer中无法正常工作,ajax,internet-explorer,Ajax,Internet Explorer,我有以下代码,当选择单选按钮时,将执行Ajax: <f:ajax event="change" listener="#{beanName.endDateChange}" render="endDate dateHdr" onevent="changeEndDateBox(this)"/> 该代码在其他浏览器中运行良好,但在IE中,当我选择单选按钮时,除非单击其他地方,否则不会发生任何事情 我见过许多Ajax解决方案在IE中不起作用

我有以下代码,当选择单选按钮时,将执行Ajax:

<f:ajax event="change"
        listener="#{beanName.endDateChange}"
        render="endDate dateHdr"
        onevent="changeEndDateBox(this)"/>

该代码在其他浏览器中运行良好,但在IE中,当我选择单选按钮时,除非单击其他地方,否则不会发生任何事情

我见过许多Ajax解决方案在IE中不起作用,比如设置cache=false,但我不确定如何将其转换为xhtml文件中的Ajax代码(我尝试过使用immediate=“true”,但没有成功)。

您可以尝试,并将JQuery更改事件附加到单选按钮。然后,调用ajax方法并执行以下操作:

<input class="rdo" type="radio" value="AA" /> AA<br />
<input class="rdo" type="radio" value="BB" />BB

<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.3.1.min.js"></script>
<script type="text/javascript">
    $(function () {
        $(".rdo").each(function (index, item) {
            $(item).change(function () {
                alert($(this).val());

                //ajax code, do something.
            })
        })
    });
</script>
AA
BB $(函数(){ $(“.rdo”)。每个(函数(索引,项){ $(项目).更改(功能(){ 警报($(this.val()); //ajax代码,做点什么。 }) }) });
是的,这是IE中的一个已知问题。这种情况已经存在很长一段时间了。直到输入失去焦点,更改才会触发。js/html实现有一些变通方法,但我不知道使用
f:ajax
时会发生什么。