2014-02-19 56 views
0

我有一個PHP表單,其中有一個下拉菜單,用於「僱用」,「自僱」和「失業」等選項。特定選擇選項的PHP表單驗證和工具提示消息

如果有人在嘗試提交表單時選擇失業,我想顯示驗證消息。

我的代碼如下

var employment = $("#employment").val().length; 

if(employment == 0) 
{ 
    $("#employment").parent().css('background-color', '#B2E120'); 
    error = true; 
} 
else{ 
    $("#employment").parent().css('background-color', '#fff'); 
} 

和我的下拉代碼如下所示。

<option value="unemployed" title="Your tooltip here">Unemployed</option> 

回答

0

讓我們更徹底地假設您的標記看起來是這樣的:

<select name="employment"> 
    <option value="unemployed" title="Unemployed title">Unemployed</option> 
    <option value="selfemployed" title="Self-Employed title">Self-Employed</option> 
    <option value="employed" title="Employed title">Employed</option> 
</select> 

然後,您可以在change事件綁定到select元素,並執行一個函數,有條件地增加了一個背景色:

<script> 
// Wait until jQuery has loaded 
$(function(){ 
    // Bind change event 
    $('[name="employment"]').change(function(){ 
    var val = $('[name="employment"] :selected').val(); 
    if(val == 'unemployed') { 
     $('[name="employment"]').css('background-color', '#b2e120'); 
    } else { 
     $('[name="employment"]').css('background-color', '#fff'); 
    } 
    }); 
}); 
</script> 

您可以在此處看到此操作:http://jsfiddle.net/yMPHV/1/

請注意,這僅在選擇更改時觸發。所以,如果你想在同一代碼在頁面加載執行,結合change事件後補充一點:

$('[name="employment"]').change(); 

這將觸發選擇元素的變化情況,從而執行相同的邏輯。

+0

嗨感謝您的回覆。我想達到的是當有人提交按鈕。它檢查就業下降是否「失業」。如果不是失業者,那麼它只是處理formmail腳本,否則它只是顯示就業選擇選項的工具提示(說我們不能爲失業者詢問服務)這可能嗎? – user3121064

+0

是的,你確實在你原來的帖子中說過,我很抱歉。而不是綁定到select元素的'change'事件,綁定到表單的'submit'事件,如下所示: $('#employment-form')。submit(function(){ var val = $('[name =「employment」]:selected')。val(); if(val =='unemployed'){$('[name =「employment」]')。css('background-color ','#b2e120'); return false; //防止表單被提交 } return true; //現在將處理表單的'action' }); – Ramacciotti

相關問題