1
<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
確實。我提交表單,並重新加載頁面。表單提交後AJAX onchange行爲更改
現在,當我嘗試在文本框中輸入新值時,如輸入A
,值不斷被刪除。這發生在之前我點擊文本框外。這與表單提交後有關係嗎?
注:我使用AJAX下面我JS函數調用,如果這是有幫助的..
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。這是問題很可能來自... –
它不應該是,因爲在表單提交後,當我的光標仍然在文本框中,並且我更改值**沒有**點擊複選框,頁面錯誤地認識到值已更改**而沒有**點擊。這就是爲什麼我強烈感覺到它是一個HTML的問題,基於W3C的onchange文檔:\ – bouncingHippo
您可以發佈的'setF'函數的代碼。代碼中沒有提供任何幫助。 – Joseph