当输入类型文本xxx
更改值时,如何调用函数id="username"
?
首先,将数据填入
<input type="text" name="thingy" onkeypress="updateInput(this.value)" onkeyup="updateInput(this.value)" />
然后是数据
<input type="text" name="thingy" onkeypress="updateInput(this.value)" onkeyup="updateInput(this.value)" />
会改变价值。
好的,当输入name="thingy"
更改我想调用函数xxx
时,我尝试使用此代码但不起作用。
我该怎么做?
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
function updateInput(ish){
document.getElementById("username").value = ish;
}
</script>
<form id="main_fid">
input1 : <input type="text" name="thingy" onkeypress="updateInput(this.value)" onkeyup="updateInput(this.value)" />
<span id="mySpan"></span>
<input type="submit" value="OK"/>
</form>
<script>
function xxx() {
$.ajax
(
{
url: 'other.php',
type: 'POST',
data: $('#username_send_value_fid').serialize(),
cache: false,
success: function (data) {
$('#mySpan').show();
$('#mySpan').html(data);
}
}
)
}
</script>
<br>
<form id="username_send_value_fid">
input2 : <input type="text" name="username" id="username" onchange="xxx()" readonly/>
</form>
答案 0 :(得分:0)
$("#username").on( "change", handler )
或简称
$("#username").change( handler )
并删除内联onchange
属性。您还需要将代码包装在ready function:
$(document).ready(function(){
$("#username").change( handler )
});
在仔细阅读问题后添加:
如果您想将input name="thingy"
与username
关联,可以执行以下操作:
$('input[name="thingy"]').change(function(){
$("#username").val( $(this).val() ).trigger('change');
});
这将更新username
的值,然后触发更改事件,就像用户输入了输入一样。
但是,如果你想要完成的是验证输入的唯一性,那么就没有理由跳过这么多的箍 - 直接从username
更改事件调用你的ajax处理程序。
答案 1 :(得分:0)
我认为在&#34; onchange&#34;上调用xxx()事件或updateInput(ish)内部将产生相同的效果。
尝试
function updateInput(ish){
document.getElementById("username").value = ish;
xxx();
}