2013-08-24 81 views
0

我有一個功能在jQuery上添加窗體,但我需要修復該功能以顯示編輯窗體上的div。如果選擇的值顯示div jQuery

示例添加形式:

的jQuery:

$(document).ready(function() { 
    $('#status').bind('change', function (e) { 
    if($('#status').val() == 'Rejected') { 
     $('#reason').show(); 
     $("#reason").css({ display: "inline-block" }); 
     $('#decision').hide(); 
    } 
    else if($('#status').val() == 'Accepted') { 
     $('#reason').hide(); 
     $('#decision').show(); 
    }   
    }); 
}); 

形式:

<div class="status" style="display:inline-block;"> Status: 
<select name="status" id="status"> 
<option value="Accepted" selected="selected">Accepted</option> 
<option value="Rejected">Rejected</option> 
</select> 
</div> 
<div id="reason" style="display:none;">&nbsp; Reason: <input type="text" name="reason" value="" placeholder="The reason..."></div> 
<div id="decision" style="display:inline-block;">&nbsp; Decision: 
<select name="decision"> 
<option value="Waiting" selected="selected">Waiting</option> 
<option value="Send">Send</option> 
</select> 
</div> 

JSFiddle example

好,但是當我打開編輯的形式和 「拒絕」 被選中原因仍然隱藏在決策中。

我的問題是,如何獲得「隱藏」決定和「顯示」原因如果被拒絕?

任何幫助非常感謝。

回答

4

你可以只觸發事件與一個trigger('change')這樣立即觸發:

$(document).ready(function() { 
    $('#status').bind('change', function (e) { 
    if($('#status').val() == 'Rejected') { 
     $('#reason').show(); 
     $("#reason").css({ display: "inline-block" }); 
     $('#decision').hide(); 
    } 
    else if($('#status').val() == 'Accepted') { 
     $('#reason').hide(); 
     $('#decision').show(); 
    }   
    }).trigger('change'); 
}); 

http://jsfiddle.net/VLQKw/1/

+0

完美,錯過了.trigger,THX了很多。 – Dario

相關問題