当数据输入到另一个输入时清除输入
问题描述:
我有一个具有辅助地址部分的表单。在本节中,您可以填写街道或邮政信箱地址。我想确保只提交一个地址,所以如果用户将数据输入到另一个输入字段,我想清除其他表单。当数据输入到另一个输入时清除输入
我的下面的代码不工作,有什么想法?由于
$('#pobox_number').change(function() {
if ($(this).val().length > 0) {
$('#street_name_postal').val('');
}
答
答案最终是非常简单的,不知道为什么我需要如此精确地定位元素,但在“#street_name_postal”之前添加了输入就是了。
$('#pobox_number').change(function() {
if ($(this).val().length > 0) {
$('input#street_name_postal').val('');
}
答
假设#pobox_number是文本类型的输入更改事件仅在模糊解雇,所以你的代码可能会被工作,但只是没有你指望它。
你可以尝试使用的按键事件,而不是让你的代码看起来像这样:如果元素的ID是正确的
$('#pobox_number').keypress(function() {
if ($(this).val().length > 0) {
$('#street_name_postal').val('');
}
}
答
您的代码应该工作。工作=清除其他字段的值。
但是,如果您不想发送输入(即使它是空的)内容,则应确保这些元素的name
属性为空,如果没有设置name
属性,则不发送数据。
答
您的代码看起来没问题,除了缺少的右括号change
。你应该有:
$('#pobox_number').change(function() {
if ($(this).val().length > 0) {
$('#street_name_postal').val('');
}
});
这是一个工作jsFiddle sample。也就是说,我建议使用blur
来代替,否则用户可能会在字段之间来回切换,如果值没有改变,那么事件将不会被触发。这是一个example of the blur
approach。
你可以提出一个警报,看看函数是否在你输入pobox_number文本框时被调用吗? – Asdfg 2012-03-22 03:22:23
嗨,我试过了,警报没有运行。有什么建议么?谢谢 – 2012-03-22 03:49:03
嗨,大家好,感谢所有的帮助,我通过在ID前添加输入来获得代码。奇怪,但它需要这些目标的ID。如果任何人需要点只是回答使用这:) – 2012-03-22 20:22:38