Javascript 使用jquery将焦点添加到输入
为什么这个代码不起作用?如果我将焦点设置行替换为测试警报,则可以正常工作Javascript 使用jquery将焦点添加到输入,javascript,php,jquery,Javascript,Php,Jquery,为什么这个代码不起作用?如果我将焦点设置行替换为测试警报,则可以正常工作 $('#rendeles_termek').on('change', function() { $('#rendeles_mennyiseg').focus(); }); $('rendeles_termek')。在('change',function()上{ $('#rendeles_mennyiseg').focus(); }); 选择1 选择2 我使用以下代码解决问题: $(document).rea
$('#rendeles_termek').on('change', function() {
$('#rendeles_mennyiseg').focus();
});
$('rendeles_termek')。在('change',function()上{
$('#rendeles_mennyiseg').focus();
});代码>
选择1
选择2
我使用以下代码解决问题:
$(document).ready(function(e) {
$('#rendeles_termek').on("change", function() {
setTimeout(function(ev) {
$('#rendeles_mennyiseg').focus(); },
1);
});
});
如果您修复HTML,使select
有一个结束标记和一些选项
元素,那么它绝对可以正常工作:您没有友好地关闭
,请为select标记发布完整的HTML。谢谢。我在第一篇文章中复制了完整的代码。您的代码是在$(document).ready方法中还是在标记之前?焦点不起作用,但测试警报起作用。不知道,这里发生了什么。焦点正在工作。请检查一下。请解释原因。@slacker:更改引号有什么作用?在PHP中,可以对字符串使用单引号或双引号。它们之间有区别,但这些区别都不适用于这里。事实上我喜欢JS。所以我想这可能就是问题所在。我会更新我的答案。谢谢你的通知。是否有什么东西,也许在引导中,会影响焦点?
<select name="rendeles_termek" class="form-control chosen-select" id="rendeles_termek">
<?php
$ertek = isset($_POST["rendeles_termek"]) ? $_POST["rendeles_termek"] : '' ;
$get_gyartok = mysqli_query($kapcs, "SELECT termek_id, termek_nev, termek_egyseg FROM termek WHERE termek_status = 1
ORDER BY termek_nev ASC");
if(mysqli_num_rows($get_gyartok) > 0 )
{
while($gy = mysqli_fetch_assoc($get_gyartok))
{
$selected = $ertek == $gy['termek_id'] ? ' selected="selected"':'';
echo '<option ' . $selected . ' value="' . $gy['termek_id'] . '">' . $gy['termek_nev'] . ' - ('.$egysegek[$gy['termek_egyseg']].')</option>';
}
}
?>
</select>
<input class="form-control" id="rendeles_mennyiseg" name="rendeles_mennyiseg" type="text" value="<?php echo isset($_POST["rendeles_mennyiseg"])?$_POST["rendeles_mennyiseg"]:""; ?>"/>
$(document).ready(function(e) {
$('#rendeles_termek').on("change", function() {
setTimeout(function(ev) {
$('#rendeles_mennyiseg').focus(); },
1);
});
});