表单提交后,Ajax Onchange行为发生了变化


     <form   action="" name="theForm" method="post">
    ...code for dropdown menus initialized to empty...
    <td colspan="1" width="250">
      <input type="text" id="CAPS_CODE" name="CAPS_CODE" value=""  
        onchange="setF('LALA', this.value)" size="20" maxlength="20"/>
           <div style="display:none;" id="CAPS_CODE$err">
            <span style="color: #FF0000; font-family: Arial, 
              Helvetica, sans-serif; font-size: 10px; 
               font-weight: bold; text-decoration: none;">
            </span>
           </div>
    </td>
    `....form submit button in HTML and function call here - legacy code that works...`
    </form>

基本上,这是一个输入文本框。当我输入" BMW",然后移动光标在文本框外单击它时,它将填充下拉菜单到某些值。这就是我了解onchange做的。我提交表格和页面重新加载。

现在,当我尝试在文本框中输入新值时,例如输入A时,值不断被删除。在之前,这发生在之前,请单击文本框外。这与表格提交后有关吗?

注意:如果这很有帮助,我正在使用JS函数调用中的Ajax。

var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, capsCallback, postData);    

function setF(group_id, caps){
        var token = document.theForm.sessionToken.value;
        getCarByAjax(token, group_id, caps);              
    }   

function getCarByAjax(sessionToken, group_id, caps){
        top.currentDependencyGroup = group_id;
        //alert("strs= " + strs);
        var entryPoint = '/DropDownList?';
        // entryPoint is the base URL
        if(top.ctx != null && top.ctx != ""){       
            entryPoint = top.ctx + '/DropDownList?';
        }
        var sUrl = entryPoint + encodeURI;
        var postData = 'CAPSVEH=' + caps + '&FROM=' + group_id + '&sessionToken=' + sessionToken;   
        var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, capsCallback, postData);            
    }

是的,解决方案在您的JS代码中。尝试Onblur或JS代码中的警报进行调试。请注意display.style ='none'和重置值=''

相关内容

最新更新