如何在选择标签的onchange事件中调用JavaScript函数?

4
以下是我的JavaScript代码:
<script language="JavaScript">
function checkit()
{  
var state=document.frm.getElementById(stateS)
if (state="Please select a state")
    {
    document.frm.Month.disable = true;
    }
else
    {
    document.frm.Month.enable = true;
    }   
}</script>

我在下面的<select>标签中调用了checkit()函数:

<td align="left"><g:select name="Month" from="${month.values()}" optionValue="${Month}" onChange=checkit()/></td>
 </tr> 

我有一个州的选择标签,直到我选择任何一个州,月份选择框都应该被禁用。有人能告诉我我错在哪里吗?

5个回答

5
实际上,这里少了一个引号,应该是


onChange="checkit();"

3
onchange 改为 onChange="checkit(this);,并在 checkit 中添加以下内容:
function checkit(selectObj)
{ 
  var idx = selectObj.selectedIndex;
  document.frm.Month.disabled = idx == 0;
}

这不起作用。在checkit函数中,我正在检查状态选择框中是否选择了状态,如果没有,则希望月份选择框被禁用。我已将其更改为onChange = checkit(this)。 - laxmi
对我来说似乎是有效的。我假设“请选择一个州”是列表中的第一个(索引0)。只有当idx为0时,idx == 0才会得到trueselect前面的g:是什么? - Jonas Elfström

1

document.querySelector("select").onchange = function() {myFunction()};

document.querySelector("select").onchange = function() {myFunction()};


欢迎来到 Stack Overflow!在回答问题之前,请先阅读本站的介绍以及"如何回答问题"。 - Miroslav Glamuzina

1

通过id选择器jquery-1.9.1

$('#selectBox').on('change', function() 
{
    value= this.value;
    if(value==0)
      {
        //code
      }
    else if(value==1)
      {
         //code
      }
     ...
     else
      {
         //code
      }
  });

0

我需要在生成输入标签之前放置它的JavaScript函数。
例如,在jourJSframework(document).ready函数之外或者在你的HTML文档的<\head>闭合标签之前。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接