我有一个SELECT,我想让它在onchange上动画一下,继续使用SELECT代码:
<select id="account_select" onchange="submit_value()">
<option value="">Select account</option>
<option value="1">Account 1</option>
<option value="2">Account 2</option>
</select>
继承人jquery:
function show_keyboard ()
{
$('.keyboard').animate({bottom: '0px'}, 2000);
}
function submit_value ()
{
if (!is_number($('#account_select').val()))
{
alert('You must select an account');
}
else
{
show_keyboard();
}
}
问题是,在我选择一个帐户后,我必须点击屏幕上的某个位置才能通过show_keyboard功能显示键盘。我不知道为什么。
答案 0 :(得分:1)
不使用内联JavaScript更好/更清洁。
只需使用jQuery的change()
:
修改强>
我将使用的代码:
function show_keyboard ()
{
$('.keyboard').animate({bottom: '0px'}, 2000);
}
$('#account_select').change(function() {
if ($(this).val() == '') {
alert('Please select an account');
return true;
}
show_keyboard();
});
答案 1 :(得分:0)
HTML
<select id="account_select">
的jQuery
$('#account_select').change(submit_value);
答案 2 :(得分:0)
请告诉我这是否适合您:
<html>
<head>
<script type="text/javascript" src="jqueryMIN.js"></script>
<script>
function hello() {
var selObj = $('#direction');
var slider = $('#slider');
if (!parseInt(selObj.val()))
{
alert('You must select a direction');
}
else
{
switch(parseInt(selObj.val()))
{
case 1:
slider.animate({top: 100}, 800)
break;
case 2:
slider.animate({left: 100}, 800)
break;
case 3:
slider.animate({ top: 0, left: 0 }, 800)
break;
}
}
}
</script>
</head>
<body>
<select id="direction" onchange="hello()">
<option value="">Select an direction</option>
<option value='1'>down</option>
<option value='2'>right</option>
<option value='3'>reset</option>
</select>
<div id='slider' style='position: relative; display: block; background-color: #00f; width: 100px; height: 100px;'></div>
</body>
将jquery引用替换为jquery-version.js文件的路径。如果这不能按预期工作,那么jquery库文件可能出错。如上所述,我不建议使用内联方法,但为了举例,我将它包含在这里。
希望这有帮助。
答案 3 :(得分:-1)
我知道使用jquery更改功能是一种更好的方法...这个问题似乎在浏览器刷新后自行解决。