0

Javascript代码:

function doClick()
{
  alert("clicked");
}

HTML 代码:

<div >
<table border="2" cellspacing="0" cellpadding="0" class="TextFG" style="font-family:Arial; font-size:10pt;">
<tr>
<td width="100%">
  <table border="0" style="font-family:Arial; font-size:10pt;" cellspacing="0" cellpadding="3">
    <tr>
      <td>&nbsp;Find:</td>
      <td nowrap>
        <input type="text" id="Find_Text" name="Find_Text" size="7" >&nbsp;<input type="checkbox" name="Find_ExactMatch" value="1" checked>
      </td>
      <td colspan="2" style="cursor:default" nowrap >Exact Match</td>
    </tr>
    <tr>
      <td>&nbsp;In:</td>
      <td>
        <select name="Find_DataFile">
          <option value="1">Stage 1</option>
          <option value="2">Stage 2</option>
        </select>
      </td>
      <td align="center" valign="top">
        <input type="submit" value="Go" onclick="doClick();"/>
      </td>
      <td align="center"><font class="DataFG">F2<font></td>
    </tr>
  </table>
</td>
</tr>
</table>
</div>

大家好,

像上面这样的简单代码不会在 Chrome(最新)中触发,但会在 IE8 和 IE10 下触发。我做错什么了吗?

感谢任何帮助谢谢

在遍历我上面提供的代码中的每一行之后(其中还包括一个服务器请求以填充名为“Find_DataFile”的下拉列表,我无法提供其代码)我终于找到了导致对象未定义错误的罪魁祸首(因为它的 id 没有定义,我正在调用 getElementById 将它分配给一个临时对象)。现在都适用于 IE8 IE10 Chrome 和 Safari。感谢大家一直以来帮助我找到解决方案的时间和精力。非常感谢。我现在可以正常呼吸了,哈哈!

4

3 回答 3

1

提交按钮是一种特殊类型的按钮,仅在 <form> 标签内使用。它运行您在其所属表单的“onsubmit”属性中指定的任何函数。有关提交按钮如何与 javascript 和表单“onsubmit”交互的想法,请参阅此处。如果以这种方式连接起来,您将能够获得所需的效果。所以要特别注意 FORM 标记,代码将是......

<body>
    <div>
        <form name="myForm" action="http://www.google.com" onsubmit="return doClick();" method="post">
            <table border="2" cellspacing="0" cellpadding="0" class="TextFG" style="font-family:Arial; font-size:10pt;">
                <tr>
                    <td width="100%">
                      <table border="0" style="font-family:Arial; font-size:10pt;" cellspacing="0" cellpadding="3">
                        <tr>
                          <td>&nbsp;Find:</td>
                          <td nowrap>
                            <input type="text" id="Find_Text" name="Find_Text" size="7" >&nbsp;<input type="checkbox" name="Find_ExactMatch" value="1" checked>
                          </td>
                          <td colspan="2" style="cursor:default" nowrap >Exact Match</td>
                        </tr>
                        <tr>
                          <td>&nbsp;In:</td>
                          <td>
                            <select name="Find_DataFile">
                              <option value="1">Stage 1</option>
                              <option value="2">Stage 2</option>
                            </select>
                          </td>
                          <td align="center" valign="top">
                            <input type="submit" value="Go" />
                          </td>
                          <td align="center"><font class="DataFG">F2<font></td>
                        </tr>
                      </table>
                    </td>
                </tr>
            </table>
        </form>
    </div>
</body>
</html>

然后是javascript:

function doClick()
{
alert("I've been clicked");
}

这对我有用:)

于 2013-10-15T03:38:12.237 回答
0

提交按钮已经具有默认功能。它不会在许多浏览器中触发 onclick 功能。尝试将按钮类型更改为“按钮”并尝试使用 javascript 提交表单。

于 2013-10-15T03:08:02.727 回答
0

为您的样品。它应该工作。

您应该确定两件事:

  1. 单击该按钮时,请确保已加载 Javascript 代码。
  2. 您的 Javascript 代码不得有任何语法错误。
  3. 如果按钮在表单内,点击后可以提交表单。
于 2013-10-15T03:01:56.030 回答