Javascript 合并表单输入和清除状态的属性

Javascript 合并表单输入和清除状态的属性,javascript,jquery,forms,internet-explorer,Javascript,Jquery,Forms,Internet Explorer,我正在使用一种变通方法,用jQuery克隆表单输入元素,并使其在InternetExplorer中工作。下面的代码成功克隆了元素,但也克隆了输入状态和值。清除状态和价值观的最佳方法是什么?问题是这里混合了radio、checkbox和textfields,所以我不能只清除输入值,必须考虑选中和选中状态 谢谢你的指点 function setElementName(elems, name) { if ($.browser.msie === true){ $(elems).e

我正在使用一种变通方法,用jQuery克隆表单输入元素,并使其在InternetExplorer中工作。下面的代码成功克隆了元素,但也克隆了输入状态和值。清除状态和价值观的最佳方法是什么?问题是这里混合了radio、checkbox和textfields,所以我不能只清除输入值,必须考虑选中和选中状态

谢谢你的指点

function setElementName(elems, name) {
    if ($.browser.msie === true){
        $(elems).each(function() {
            this.mergeAttributes(document.createElement("<input name='" + name + "'/>"), false);
        });
    } else {
        $(elems).attr('name', name);
    }
} 

最终找到了解决此问题的方法,如下所示:

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;
        }