2015-10-28 109 views
1

我使用的是bootstrap-validator,它對驗證非常有用,但是我現在需要禁用輸入,直到上一個輸入已被驗證。我看着bootstrap-validator,我看到了這些events看起來像他們會在這個過程中幫助,但我無法弄清楚如何在輸入ID上調用它們。禁用輸入,直到之前的輸入通過引導驗證器驗證

HTML

<form role="form" data-toggle="validator"> 
    <div class="form-group"> 
     <input type="text" class="form-control" id="login-name" placeholder="Your Name" data-error="Please provide a valid name" required> 
     <div class="help-block with-errors"></div> 
    </div> 
<div class="form-group"> 
     <input type="text" class="form-control" id="chosen-name" placeholder="Your Chosen Name" data-error="Please provide a valid name" required disabled> 
     <div class="help-block with-errors"></div> 
    </div> 
    <button type="submit" class="btn btn-default action-btn">Submit</button> 
    </form> 

JS

//Bootstrap Validator 
$('form').validator({ 
    // Trying to check if #login-name is valid, obviously not working!!! 
    if(valid.#login-name){ 
     $('#chosen-name').prop('disabled', false); 
    } else{ 
     $('#chosen-name').prop('disabled', true); 
    } 
}); 

回答

1

你的JS應該是這樣的:

$('form') 
.validator() 
.on('valid.bs.validator', function (e) { 
    if(e.relatedTarget.id==='login-name') 
    { 
     $('#chosen-name').prop('disabled', false); 
    } 
    }) 
.on('invalid.bs.validator', function (e) { 
    if(e.relatedTarget.id==='login-name') 
    { 
     $('#chosen-name').prop('disabled', true); 
    } 
    }) 
+0

謝謝你,夥計,你的解決方案看起來像它應該工作,但事實並非如此。奇怪 –

+0

感謝,現在工作很好:) –