2016-11-08 91 views
0

我使用Sweet Alert Plugin來顯示警報,如果我單擊確定,我想集中在我的文本框中。專注於一個對象JQuery

我的問題是:1。 如果我習慣於從甜警報timer財產,在jQuery的重點功能無法正常工作 2.但如果我不是甜警報使用性能,在jQuery的重點功能工作正常。

也許有人可以幫我解決我的問題:d

我的腳本:

swal({ 
    title: "Auto close alert!", 
    text: "I will close in 2 seconds.", 
    timer: 2000 
}); 
$('.classMyTextField').focus(); 

PS:我試圖用SwaI位功能的2對焦功能,但仍然沒有工作:d

謝謝

回答

0

你可以試試這段代碼嗎?

swal({ 
    title: "Auto close alert!", 
    text: "I will close in 2 seconds.", 
    timer: 2000 
}, function(){ 
    swal.close(); 
    $('.classMyTextField').focus(); 
}); 
+0

我試過了,但仍不能專注......你有另一種解決方案? –

0

只需添加一個回調函數作爲SwaI位的()

swal({ 
    title: "Auto close alert!", 
    text: "I will close in 2 seconds.", 
    timer: 2000 
    }, 
    function(){ 
    // SweetAlert confirmed, do something 

    $('.classMyTextField').focus(); 
    } 
); 

要做些什麼的時候SweetAlert是證實取消第二個參數:

swal({ 
    title: "Auto close alert!", 
    text: "I will close in 2 seconds.", 
    timer: 2000 
    }, 
    function(isConfirmed){ 
    if(isConfirmed){ 
     swal("Confirmed!", "You confirmed the alert.", "success"); 
     $('.classMyTextField').focus(); 
    } 
    else{ 
     swal("Cancelled!", "You cancelled the alert.", "warning"); 
    }   
    } 
); 

UPDATE :

要僅顯示通知沒有確認或取消按鈕:

swal({ 
    title: "Auto close alert!", 
    text: "I will close in 2 seconds.", 
    timer: 2000, 
    showConfirmButton: false, 
    showCancelButton: false 
    }, 
    function(){ 
    // alert closed 
    $('.classMyTextField').focus(); 
    } 
); 
+0

但我只想顯示通知沒有任何操作,是否有可能沒有任何行動聚焦?你有另一種解決方案嗎? –

+0

@MuhammadBima Sweet Alert是異步的。當它關閉時,您必須使用回調函數來執行某些操作。 – Barmar

+0

這應該使用或不使用計時器。也許你沒有正確選擇你的文本框。你會告訴我們你的HTML嗎? – doncadavona

0

做到這一點,最好的和有效的方法是隻是關閉SwaI位前使用.then(function(){「;」。

使用你的代碼,這將是這樣的:

swal({ 
    title: "Auto close alert!", 
    text: "I will close in 2 seconds.", 
    timer: 2000 
}).then(function(){ 
    $('.classMyTextField').focus(); 
});