2013-02-26 31 views
1

如果表單中的兩個輸入元素(例如文本字段)可以說用戶名和密碼,獲得長度大於0的文本輸入,你將如何創建一個事件來改變提交按鈕的顏色,當用戶在這兩個字段中輸入時?如何檢測是否輸入了兩個輸入元素,如文本字段。(php/javascript)

+0

請解釋什麼更多你到底想幹什麼? – AlphaMale 2013-02-26 05:00:30

+0

如果您有一個表單和兩個輸入字段,一個用於用戶名和一個用於密碼,另一個用於輸入按鈕。在用戶輸入用戶名後,如何在用戶開始輸入密碼時更改提交按鈕的顏色? – 2013-02-26 05:03:06

+0

檢查我的回答:) – AlphaMale 2013-02-26 05:16:35

回答

0
document.getElementById('submit').onclick = function() { 
    var inputs = document.getElementsByTagName('input'), 
     empty = 0; 

    for (var i = 0, len = inputs.length - 1; i < len; i++) { 
     empty += !inputs[i].value; 
    } 
    if (empty == 0) { 
     //write code for changing the button color 
    } 
}; 
0

我喜歡上面的答案,這裏是一個jQuery的答案,如果你喜歡看起來更好!

$(document).ready(function() { 
    $("#username").change(checkFunction()); 
    $("#password").change(checkFunction()); 
} 
function checkFunction() { 
    var user = $("#username").val(); 
    var pass = $("#password").val(); 
    if (user && pass) { 
     $("#buttonid").css("background-color:#HEXCODE"); 
    } 
} 
0

製作一個javascript函數,用於檢查兩個輸入的值是否大於零,如果他們這樣做,則在調用時會更改提交按鈕的顏色。

在輸入標籤中使用onChange屬性,並將javascript函數的名稱放在屬性中。

您還可以通過執行

Object.onChange = functionToCall(); 

的onChange觸發它的設置,只要輸入值發生變化的功能設置的屬性。

0

如果您在項目中擁有jQuery的,你可以嘗試這樣的事:

假設你的投入有ID:

<input id="username" name="username"/> 
<input id="password" name="password"/> 
<input type="submit" value="Submit" id="submit" /> 

您可以綁定到keyup事件中任一輸入元素來改變上按鈕的顏色:

$('#username, #password').keyup(function(){ 
    if ($.trim($('#username').val()) != '' && $.trim($('#password').val()) != '') { 
     $('#submit').css('background-color', 'red'); 
    } 
}); 
0

這裏是正在運行的小提琴:

http://jsfiddle.net/NS5z6/

HTML:

<input type=text id=username /> 
<input type=password id=password /> 
<input type=submit id=submit /> 

CSS:

#submit{ background-color: red; } 

JS:

$('input[id="username"], input[id="password"]').change(function(){ 
    if ($(this).val()!="") 
    { 
     $("input[id='submit']").css("background-color","green"); 
    }else{ 
     $("input[id='submit']").css("background-color","red"); 
    } 
}); 
0

您可以使用下面的邏輯

<input type = "text" name = "username" class = "text"> 
    <input type = "password" name = "password" class = "text"> 
    <input type = "button" class = "button"> 
    <script> 
    $(".text").live("keyup", function(){ 

     var filled = true; 

     $(".text").each(function(i, v){ 
      if($(this).val() == ''){ 
      filled = false 
      } 
     }); 

     if(filled){ 
     $(".button").css("background-color:#black"); 
     } 
    }); 
    </script> 
相關問題