jqueryonclick刷新字段

jqueryonclick刷新字段,jquery,jsf,Jquery,Jsf,我有一个jsf下拉列表,它决定使用jQuery在更改时填充的字段 $(document).ready(function(){ //hide all in target div $("div","div#fields").hide(); $("#dbform\\:dbfields").change(function() { // hide previously shown in target div $("div", "div#fields"

我有一个jsf下拉列表,它决定使用jQuery在更改时填充的字段

$(document).ready(function(){
    //hide all in target div
    $("div","div#fields").hide();
    $("#dbform\\:dbfields").change(function() {
        // hide previously shown in target div
        $("div", "div#fields").hide();
        var value = $("#dbform\\:dbfields").val();
        $("div#" + value).show();
    });
});

但是当我单击div+value-div标记中的submit按钮时,JSF页面会刷新,控件会消失,并抛出一个错误,表示字段不能为空。不知道如何克服这个问题。我希望按钮提交事件并填充其他字段。

是什么让您认为它正在刷新页面,而不是像预期的那样,提交表单?未触发提交事件。div标记中的输入字段被隐藏并引发验证错误,说明字段不能为空。是否验证服务器上是否发生验证错误?如果表单上提交的值无效,则不会触发提交按钮的操作事件。jQuery ready函数将在每次服务器回发后执行,这解释了为什么div仍然被隐藏。@maple:验证错误不在服务器端。正如您所说,ready函数将在每个服务器回发上执行,是否有任何方法可以删除该依赖关系。我尝试创建一个javascript函数,并在下拉菜单更改时触发它,但在这种情况下显示和隐藏函数似乎不起作用。长期以来一直在处理这个问题。请帮忙。