我有这个simeple jQuery代码:
$('#category_name').change(function()
{
alert('Handler for .change() called.');
var category = $("#category_name").val();
});
这种形式:
<form id="problem_categories" name="problem_category_form" method="post">
<p>
Category Name: <input type="text" size="50" name="category_name" id="category_name"></input>
</p>
<p>
<input type="hidden" id="category_problem_id" name="category_problem_id" value="<?php echo $problem_id; ?>" />
<span class="error" id="category_error" style="display:none"> Please Enter Valid Data</span>
<span class="success" id="category_success" style="display:none"> Category Added Successfully!</span>
<input type="submit" class="button" value="Add Category"></input>
</p>
</form>
但由于某些原因,当我在表单字段中输入文本时,jQuery不会触发。这是一个示例页面,可以在右下角进行:http://www.problemio.com/problems/problem.php?problem_id=51
答案 0 :(得分:2)
您的代码正常运行,change
事件在文本框失去焦点之前不会触发。
您可以尝试“keyup”活动。
答案 1 :(得分:2)
改为使用keyup:
$('#category_name').keyup(function()
{
alert('Handler for .change() called.');
var category = $("#category_name").val();
});
答案 2 :(得分:1)
这个怎么样?
$(function() {
cat_name = document.getElementById('category_name');
$(cat_name).bind({
keyup : function() {
alert('Handler for .change() called.');
var category = $("#category_name").val();
}
});
});