jquery事件方法获取输入
Posted
技术标签:
【中文标题】jquery事件方法获取输入【英文标题】:jquery event method to get input 【发布时间】:2021-09-21 02:06:43 【问题描述】:我使用 jquery 根据下拉值获取“id”作为输入值。现在的问题是,我想使用“id”将值插入到其他一些输入中。我不知道要使用哪种事件方法。为了测试,我使用 keyup 方法检查代码是否有效,当我手动输入数字时,它有效。所以问题出在我选择的事件方法上。请给我一些建议。
//Get id
$(document).ready(function()
$('#salary_eid').change(function()
var sid = $(this).val();
var data_String = 'sid=' + sid;
$.get('search1.php', data_String, function(result)
$.each(result, function()
$('#can').val(this.c_id);
);
);
);
//display other information
$('#can').change(function()
var id = $(this).val();
var data_String1 = 'id=' + id;
$.get('search.php', data_String1, function(result1)
$.each(result1, function()
$('#morning_rate').val(this.cMorning);
$('#night_rate').val(this.cNight);
$('#ot_rate').val(this.clientOt);
);
);
);
);
<label>Name</label>
<input type="text" name="salary_eid" />
<select id="salary_eid">
<option>opt1</option>
<option>opt2</option>
</select>
<input type="hidden" name="can" id="can" class="form-control" >
【问题讨论】:
我不太确定您要达到的目标,但听起来“更改”事件可能会满足您的需求? 更改事件不能正常工作@User1010 您能否说明您的问题? 我能够在#can 输入上显示 id,但从那里我不能使用从第一个 jquery 代码获得的 ID 来执行第二个代码。 在下拉列表中,将选择一个名称,然后它应该从另一个表中获取 Id 并将其显示在隐藏的#can 输入上,然后使用#can,我应该能够显示其他信息。所以这一切都应该在我选择名字时发生 【参考方案1】:您可以从 id 代码触发 keyup() 事件,这将通过手动或 jQuery 编辑来工作,
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js" integrity="sha512-894YE6QWD5I59HgZOGReFYm4dnWc1Qt5NtvYSaNcOP+u1T9qYdvdihz0PPSiiqn/+/3e7Jo4EaG7TubfWGUrMQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script>
//Get id
$(document).ready(function()
$('#salary_eid').change(function()
var sid = $(this).val();
$('#can').val(sid).keyup();
);
);
//display other information
$(document).on('keyup', '#can', function()
console.log($(this).val())
);
</script>
<label>Name</label>
<input type="text" name="salary_eid" />
<select id="salary_eid">
<option>opt1</option>
<option>opt2</option>
</select>
<input type="text" name="can" id="can" class="form-control" />
如果您要隐藏第二个输入,那么我可能会建议使用不带输入的函数,
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js" integrity="sha512-894YE6QWD5I59HgZOGReFYm4dnWc1Qt5NtvYSaNcOP+u1T9qYdvdihz0PPSiiqn/+/3e7Jo4EaG7TubfWGUrMQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script>
//Get id
$(document).ready(function()
$('#salary_eid').change(function()
var sid = $(this).val();
display_info(sid)
);
);
//display other information
function display_info(value)
console.log(value)
;
</script>
<label>Name</label>
<input type="text" name="salary_eid" />
<select id="salary_eid">
<option>opt1</option>
<option>opt2</option>
</select>
【讨论】:
但是如果不手动输入#can 输入的值,我该怎么做呢?输入将被隐藏。所以当我选择一个名字时,它应该会自动获取id到#can输入,然后使用id来显示信息。 如果要隐藏该字段,那么为什么要使用不同的字段?为什么不从 id 函数中触发函数呢? ***.com/questions/68259929/… - 这是我的问题以上是关于jquery事件方法获取输入的主要内容,如果未能解决你的问题,请参考以下文章