簡體   English   中英

Attr確實可以,但是removeAttr似乎對我的按鈕不起作用

[英]Attr does work, but removeAttr doesn't seem to work on my button

我想以這樣的方式創建我的按鈕:如果用戶將鼠標懸停在該按鈕上,該按鈕將被禁用,但是輸入字段將為空。 這行得通,但是當我填寫所有內容並再次將鼠標懸停在按鈕上時,它將保持禁用狀態。 我查找了此鏈接: 使用JQuery刪除禁用的屬性? 並按照那里所說的做了(嘗試了多個答案),但是沒有一個起作用。 我知道變量是正確的,我已經console.log(); 那些。 所以基本上是這樣的問題:我在做錯什么還是錯過了?

編碼:

function submitBtn(tracker) {
    let btn = ($('<button/>', {
        'type': 'submit',
        'class': 'btn btn-primary',
        'id': 'submitDataBtn',
        'name': 'submitDataBtn',
        'value': 'submit'
    })).text('Submit').hover(function() {
        let datePicker = $('#datePicker').val();
        let weight = $('#weight').val();
        let distance = $('#distance').val();
        let timePicker = $('#timePicker').val();

        if(datePicker === '' || weight === '' || distance === '' || timePicker === '') {
            $(this).attr('disabled', true);

        }else if (datePicker !== '' || weight !== '' || distance !== '' || timePicker !== '') {
            $(this).prop('disabled', false);

        }else {
            // do something else
        }   
    });
    return btn;
}

禁用按鈕不能發生懸停事件。 如果您希望將其顯示為禁用,請使用不透明的類。 如果要停止提交表單,請在表單上使用驗證,例如:

document.getElementsByTagName("form")[0]).onsubmit=function() {
    return validate(this);
  }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM