HTML中的更改事件的奇怪行为

时间:2013-08-21 07:52:03

标签: javascript html

我有像这样的struts标签

<s:select label="Select Item" name="select3ph3meter1" id="select3ph3meter1" 
    headerKey="0" headerValue="-- Please Select --" list="meterHeaderList"
    required="true" onchange="show_3ph3meter1(this.value)"  />

问题是它没有在change事件上调用上述函数。当我将代码更改为此时,它可以工作:

... onchange="alert('calling')"

我无法理解这里发生了什么。

这是JavaScript函数:

function show_3ph3meter1(select3ph3meter1) {
    $("#3ph3meter1").load("meterFiller3p31.action",{select3ph3meter1:select3ph3meter1});
}

function show_depotReceipts(selectrecitem) {
    $("#recQuantity").load("depotRecQ.action",{selectrecitem:selectrecitem});
    $("#recRange").load("depotRecRange.action",{selectrecitem:selectrecitem});
}

相邻功能正常运行,因此我假设没有JavaScript错误。

另外,当我输入另一个函数(例如onchange中的相邻函数名)时,它也正常工作。问题可能在于此特定函数名称show_3ph3meter1()

2 个答案:

答案 0 :(得分:0)

  1. 首先检查您的通话功能名称
  2. 如果这是正确的,那么只需写

    onchange =“javascript:show_3ph3meter1(this)”

  3. 并获得函数值

    3其他尝试使用选择器

    的函数中的访问值
    var elem = document.getElementById("short_code"),
    selectedNode = elem.options[elem.selectedIndex]; 
    var valu = selectedNode.value;
    

答案 1 :(得分:0)

如果你在其上写的其他一些java脚本包含错误,那么这段代码就不行了。

所以最好有这样的

<select class="style" onchange="//do something like this
 //var e = document.getElementById('selectelement'); //if (e) e.value=100;" />

请检查IE浏览器以获取java脚本错误。 在该更改事件中编写整个代码