当我输入DPRtelephonenumber时,我想在DPRcallerhometelephonenumber中重复它。
只要我输入,此脚本就可以正常工作。但是如果< INPUT id =“DPRtelephonenumber”>提供从先前使用的值下拉,并且我选择它,< INPUT id =“DPRcallerhometelephonenumber”>没有设定。
那么,我需要的不仅仅是一个密钥?我如何写一个onselect ??
<input name="DPRtelephonenumber" id="DPRtelephonenumber" type="text">
<input name="DPRcallerhometelephonenumber" id="DPRcallerhometelephonenumber" type="text">
<script type="text/javascript">
$(document).ready(function() {
$('#DPRtelephonenumber').keyup(function() {
$('#DPRcallerhometelephonenumber').val($(this).val());
});
});
</script>
答案 0 :(得分:2)
由于您正在处理文本输入元素,我假设下拉列表只是浏览器提供的自动完成符。没有办法附加“onselect”处理程序。您至少可以将一个on-change处理程序附加到input元素。
尝试更改:
$('#DPRtelephonenumber').keyup(function() {
要:
$('#DPRtelephonenumber').on('change keyup', function() {
当然,在文本字段失去焦点之前,更改事件不会触发。如果您希望在文本字段的值更改后立即执行事件处理程序,则可以查看this question。
答案 1 :(得分:1)
您可以将onchange事件用于下拉菜单。
$('#mySelect').change(function() {
// do stuff here;
});
答案 2 :(得分:0)
这样的事情应该做你想做的事情:
<script type="text/javascript">
$(function(){
var updateHomeNum = function(obj){
$("#DPRcallerhometelephonenumber").val(obj.val());
};
$("#DPRtelephonenumber").on({
keyup: function(){
updateHomeNum($(this));
}, change: function(){
updateHomeNum($(this));
}
});
});
</script>