-2

我在我的网站上使用 Smarty 和 PHP。为了您的参考,我给您提供了 smarty 模板中我的代码的小代码片段。

{literal}
<script language="javascript" type="text/javascript">
 function get_tests_by_question_count() {
alert("Hi");}
</script>
{/literal}

<li style="margin-top:60px;">
              <label>Question Count</label>
              <div class="form-element">
                <select name="question_count" id="question_count">
                  <option value=""> -- Select -- </option>
                  <option value=">" {if $duration == '>'} selected="selected" {/if}>More Than</option>
                  <option value="==" {if $duration == '=='} selected="selected" {/if}>Equal To</option>
                  <option value="<" {if $duration == '<'} selected="selected" {/if}>Less Than</option>
                </select>
                <input type="text" name="question_count_no" id="question_count_no" style="width:30px;" value="{$question_count_no}" onChange="get_tests_by_question_count(); return false;"/>
              </div>
            </li>

在这里,我想在 ID 为question_count_no的文本字段中输入值后立即调用 javascript 函数。onChange在我上面的代码中不起作用。在我在文本框中输入值后,你能建议我调用 javascript 函数的任何技巧吗?提前致谢。

4

1 回答 1

1

我希望您需要使用 keyup 事件而不是 onChange。在 keyup 事件中,您可以设置一个过滤器,以便您的代码仅在输入某个数值时才起作用。

检查这个http://jsfiddle.net/hQqSa/

<script>
    function get_tests_by_question_count(e) {
        if(/[0-9]/.test(e.value)) {
            alert(e.value);
        }
    }
</script>

<input type="text" name="question_count_no" id="question_count_no" style="width:30px;" onkeyup="get_tests_by_question_count(this); return false;"/>

希望它可以帮助你。

于 2013-09-06T03:35:10.507 回答