2016-04-27 17 views
1

我在html中製作了一個帶有2個輸入字段first namelast name的表單,並在輸入類型標記中添加了required屬性。我還製作了兩個按鈕SubmitView。如果兩個字段均爲空,則顯示please fill out this field attribute消息。當我點擊提交按鈕時,我的表單中的數據使用php進入我的sql數據庫,這很好。但是當我點擊查看按鈕時,我只想顯示一條消息,但不填寫first namelast name文本區域。我如何使用查看按鈕來做到這一點?如何使輸入類型標籤的必需屬性僅適用於特定按鈕?

tl; dr:我希望輸入類型標記的'required'屬性只能用於提交按鈕而不能用於查看按鈕。我應該怎麼做?我正在使用HTML格式,CSS樣式和PHP的sql條目。謝謝。

+0

什麼是您的「查看」按鈕的類型,我假設「提交」類型提交 –

+0

是的,它是提交類型。 –

回答

1

你可以用JavaScript做類似的事情,例如給每個輸入一個ID,然後你可以檢測何時單擊view按鈕並刪除「required」屬性。

這裏是一個jQuery例如:

<html> 
<head> 
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script> 
<script> 
$(document).ready(function() { 
    $("#view").click(function() { 
     $("#test1").removeAttr("required"); 
     $("#test2").removeAttr("required"); 
    }); 
}); 
</script> 
</head> 
<body> 
    <form action="example.php" method="POST"> 
    First name:<br /> 
    <input type="text" name="firstname" id="test1" required="required"><br /> 
    Last name:<br /> 
    <input type="text" name="lastname" id="test2" required="required"><br /> 
    <input type="submit" value="Submit"> | <input type="submit" id="view" value="View"> 
</form> 
</body> 
</html> 

JSFiddle

+0

謝謝,但有沒有辦法做到這一點沒有JavaScript? –

+0

@ shraey.chikker不幸的是,'required'屬性是DOM(文檔對象模型)的一部分。 JavaScript可以操縱DOM,但CSS不能。 PHP也可以操縱DOM,但是它是服務器端語言,而不是客戶端,這就是你需要的東西。 –

+0

啊好的。謝謝。我現在可能會使用JavaScript方式.. –

1

您還可以防止點擊事件的默認操作。在這種情況下,代碼應該是這樣的:

$(document).ready(function() { 
    $("#view").click(function() { 
    return false; 
    }); 
}); 

或者使用的preventDefault:

$(document).ready(function() { 
    $("#view").click(function(e) { 
    e.preventDefault(); 
    }); 
}); 

雙方似乎很好地工作。 #view(就像前面提到的答案)是你想要防止觸發所需屬性的按鈕的id。

相關問題