javascript's函数第二次不起作用
javascript's function not working second time
当drop down
的值发生变化时,我使用下面的function of javascript
来启用和禁用radio buttons
和textbox
启动时很好,但当我单击提交按钮时,如果提交时myindex = 8 or 9
不起作用
此时,radio button filter[0] and filter[1]
应该被禁用,textfield count
应该被启用。我在选择下拉菜单和单击提交按钮时调用了这个函数
我不知道为什么它不起作用。任何帮助。
function OnChange(dropdown) {
var myindex = dropdown.selectedIndex;
document.form.filter[0].disabled = false;
document.form.filter[1].disabled = false;
if (myindex == 8) {
document.form.filter[0].disabled = true;
document.form.filter[1].disabled = true;
document.form.count.disabled = false;
document.form.submit.disabled = false;
} else if (myindex == 9) {
alert("in ALL");
document.form.filter[0].disabled = true;
document.form.filter[1].disabled = true;
document.form.count.disabled = true;
document.form.submit.disabled = false;
alert(document.form.filter[0].disabled);
}
else {
document.form.filter[0].disabled = false;
document.form.filter[1].disabled = false;
document.form.count.disabled = true;
document.form.submit.disabled = false;
}
}
下面是我的HTML代码。
<s:form action="crInquiry" name="form" >
<table align="center" width="1020">
<tr>
<td>Batch Id : <s:property value="batchId" />
<fieldset
style="background-color: #F7F9F3; margin: 2px; padding: 8px; -moz-border-radius: 5pt; border: 1px solid #A7CBE3;">
<legend class="field_label">
<strong>Inquiry Log Status</strong>
</legend>
<table border="0" id="main_table1" cellpadding="5" width="1010"
cellspacing="5" align="center">
<tr style="height: 5px;">
<td width="300" height="2" align="left" colspan="0"><s:hidden
name="batchId" id="batchId"
onfocus="OnChange((this.form.filterValue));"
value="%{ batchId }"></s:hidden> <s:select
cssClass="bulkSelect" name="filterValue"
label="Search Criteria" required="true" theme="css_xhtml"
labelposition="bottom" tabindex="2" list="headerList"
onchange="OnChange(this.form.filterValue);" />
</td>
<td width="180"><s:radio name="filter"
requiredposition="right"
list="#{'STATUS_FILTER_START':'START','STATUS_FILTER_END':'END'}"
label="Stage" labelposition="right" theme="css_xhtml"
tabindex="9" labelposition="bottom"></s:radio>
</td>
<td width="50" height="2"><s:textfield disabled="true"
value="0" name="count" size="2" labelposition="1"
theme="css_xhtml"></s:textfield>
</td>
<td width="180"><s:radio name="order"
requiredposition="right" list="#{'ASC':'ASC','DESC':'DESC'}"
label="Order" labelposition="right" theme="css_xhtml"
tabindex="9" labelposition="bottom"></s:radio>
</td>
</td>
<td width="50"><s:submit theme="css_xhtml" value="Filter"
align="left" onclick="gotopage('FilteredInquiryLog');"></s:submit>
</td>
<td width="59"><s:submit theme="css_xhtml" value="Details"
onclick="gotopage('crInquiry')"></s:submit></td>
</tr>
</table>
</fieldset>
</td>
</tr>
</table>
</s:form>
从submit开始,我调用js函数,从这里调用上面的js函数
function gotopage(actionname) {
document.form.action = actionname + ".action";
document.form.submit();
OnChange(document.form.filterValue);
}
提交表单然后尝试操作字段似乎很奇怪。。。
function gotopage(actionname) {
document.form.action = actionname + ".action";
document.form.submit();
OnChange(document.form.filterValue);
}
也许你需要的是:
function gotopage(actionname) {
OnChange(document.form.filterValue);
document.form.action = actionname + ".action";
document.form.submit();
}
相关文章:
- Jquery移动转换复选框在Jquery onclick函数()中第二次选中不起作用
- 基本的Javascript/jQuery数学游戏:为什么可以't我第二次运行此函数时进行评估
- Jquery Onclick 事件函数第二次不起作用
- OnClick函数仅在第二次单击时起作用
- 对已定义函数的第二次调用;不起作用
- 第二次单击时,使用JQUERY运行另一个函数
- Jquery函数只适用于第二次单击
- CasperJS评估函数第二次不工作
- jBox模态对话框Created监听器函数从第二次开始就不起作用了
- 函数在第二次出现时不起作用
- 量角器 - 错误:第二次使用相同的函数时索引越界异常
- JavaScript函数不可见?不会第二次被调用
- 我的 js 函数在第二次单击鼠标后被调用
- 在动态生成表中使用按钮时,AJAX 函数会触发一次,但不会触发第二次
- 第二次单击时,jQuery中不是函数错误
- jQuery UI 对话框在第二次加载时不会调用函数
- Ajax 成功函数第二次不起作用
- javascript's函数第二次不起作用
- Javascript函数第二次执行
- Jquery 函数 - 第二次调用时,不接收新数据,使用旧数据