-8

比方说,例如,我有那个代码:

<form id="validate_form2">
    <ul>
        <li>
            <label for="nome">Nome:</label>
            <input id="nome" type="text">
        </li>
        <li>
            <label for="email">Email:</label>
            <input id="email" type="text">
        </li>
        <li>
            <label for="phone">Phone:</label>
            <input id="phone" type="text">
        </li>
    </ul>
</form>

如何在“VALIDATE_FORM2”表单中更改 ID='email' 的 INPUT 类型?

4

1 回答 1

1

您可以使用 jquery 来执行此操作 - 必须将其转换回 dom 元素

$('#email')[0].type = 'password';​​​​​​
// or using .prop $('#email').prop('type','password');​​​​​​

http://jsfiddle.net/68ZPh/

或者只是普通的js

document.getElementById('email').type = 'password';

http://jsfiddle.net/tHWwZ/

如评论中所述,这可能会导致 IE 出现问题。

来自 jQuery .attr()文档

注意:jQuery 禁止更改 or 元素的 type 属性,并且会在所有浏览器中抛出错误。这是因为不能在 Internet Explorer 中更改类型属性。

另一种方法是创建一个新输入来替换它

$('#email').replaceWith('<input type="password" id="email"/>');

http://jsfiddle.net/uVXvk/

于 2012-12-04T15:53:54.727 回答