2016-08-01 112 views
-1

如何取消選中複選框將textbox textmode更改爲密碼,然後textbox textmode =文本如果未選中,然後設置textmode =密碼 使用javascript?如何使用複選框更改文本框文本模式

我想這個代碼

function test() { 
    if ($('#TBPASS12').get(0).type = 'text') { 
     document.getElementById('<%= TBPASS12.ClientID %>').type = 'password'; 
    } 
    else if ($('#TBPASS12').get(0).type = 'password') { 
     document.getElementById('<%= TBPASS12.ClientID %>').type = 'text'; 
    }   
} 

+2

共享分析/瀏覽器呈現的HTML ... – Rayon

+1

文本模式只能在javascript中閱讀。您無法更改類型。 –

+0

假設這是爲了像「顯示密碼」功能,我建議兩個不同的領域,並顯示/隱藏基於複選框的狀態。您需要找出將值綁定到兩個字段的最佳方式,或者在另一個字段更改時更新一個。應該實際發佈到服務器的字段應該是密碼字段,以確保有效負載在語義上是正確的。 – trnelson

回答

0

文本模式是在JavaScript read only。所以你不能改變js的類型。 你可以做的只有一件事是,動態和setattribute創建文本框給他們,並與前

更換試試這個樣子,

$(function(){ 
 
    var inp = document.getElementById("in"); 
 
    if(inp.type == 'text'){ 
 
    var newIn = document.createElement('input'); 
 
    newIn.setAttribute('type', 'password'); 
 
    newIn.setAttribute('id', inp.getAttribute('id')); 
 
    newIn.setAttribute('name', inp.getAttribute('name')); 
 
    inp.parentNode.replaceChild(newIn, inp); 
 
    newIn.focus(); 
 
    } 
 
});
<!DOCTYPE html> 
 
<html> 
 

 
    <head> 
 
    <meta charset="utf-8" /> 
 
    <title></title> 
 
    <link href="style.css" rel="stylesheet" /> 
 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.js" data-semver="3.0.0" data-require="jquery"></script> 
 
    <script src="script.js"></script> 
 
    </head> 
 

 
    <body> 
 
    <input id="in" type="text"/> 
 
    </body> 
 

 
</html>

0

你想透露一個密碼?正如其他人所說,textmode是隻讀的,但你可以做一些事情。

(編輯:曾經有在片段一個小錯誤,但我固定它反映的bug少小提琴的片段成功地工作)

希望這有助於

var x= document.createElement("INPUT"); 
 
var y= document.createElement("INPUT"); 
 
x.setAttribute("type", "password"); 
 
x.id = "<%= TBPASS12.ClientID %>"; 
 
x.className = "password1"; 
 
x.value =""; 
 
document.body.appendChild(x); 
 

 
var passwords = document.getElementsByClassName("password1"); 
 
for (var i = 0; i < passwords.length; i++) { 
 
    passwords[i].addEventListener('keydown', checkEnter, false); 
 
} 
 

 
function checkEnter (e){ 
 
    if (e.keyCode == 13) { 
 
    if ((".password1").value !== null) { 
 
     y.setAttribute("type", "text"); 
 
     y.id = "value"; 
 
     y.value = x.value; 
 
     y.style.display="block"; 
 
     document.body.appendChild(y); 
 
     
 
    } 
 
    } 
 
}
input[type="password"] { 
 
    background: lightblue; 
 
    width: 100px; 
 
    height: 20px; 
 
    display: block; 
 
} 
 

 
input[type="text"] { 
 
    display:none; 
 
    background: lightgreen; 
 
    width: 100px; 
 
    height: 20px; 
 
    display: block; 
 
}
<body> 
 
</body>

+0

小提琴在https://jsfiddle.net/ RachGal/6zom020p / –

相關問題