0

我使用一个函数来清除容器中表单字段的输入值:

function clear_form_elements(ele) {

$(ele).find(':input').each(function() {
    switch(this.type) {
        case 'password':
        case 'select-multiple':
        case 'select-one':
        case 'text':
        case 'textarea':
            $(this).val('');
            break;
        case 'checkbox':
        case 'radio':
            this.checked = false;
    }
});}

这完全清除了 div、fieldset 或类似(定义为 ele)中的一组输入字段。现在我试图更换

$(this).val('');

if(this.id = "town") {this.val('town');}
if(this.id = "country") {this.val('country');}

替换具有不同 ID 的输入元素,但为每个输入字段返回的值始终为“国家/地区”,即使元素的 ID 不同。

我究竟做错了什么?

4

1 回答 1

2

改变:

if(this.id = "town") {this.val('town');}
if(this.id = "country") {this.val('country');}

if(this.id == "town") {this.val('town');}
if(this.id == "country") {this.val('country');}

(双等于)

设置值后,您的语句将始终返回 true。您正在尝试比较,而不是设置值。

于 2012-08-01T12:57:32.403 回答