1
我有一個web窗體,我將beforeunload事件綁定到窗口,以檢測對的任何更改,除了我輸入的內容不需要包含。例如,我不需要綁定beforeunload事件的輸入。它應該只綁定輸入,這些輸入會在離開窗口導航時影響失去更改。鏈.on()與.not()從對象中刪除不需要的元素
這是當前綁定我有:
formChanged = false;
$('#main-form').on('change.form_change', 'input:not(.leave-change-allowed), textarea:not(.leave-change-allowed), select:not(.leave-change-allowed)', function()
{
if(!formChanged)
{
formChanged = true;
$(window).bind('beforeunload', function()
{
if(formChanged)
{
return 'Are you sure you want to navigate away from this window, you will lose unsaved changes.';
}
});
}
else
{
$(this).unbind('change.form_change');
}
});
正如你可以看到我已經包含:not(.leave-change-allowed)
到在選擇器中的元素,以逗號分隔以選擇的形式的元素。雖然,我不想將not()
添加到選擇器,因爲可能會有幾個選擇器我想添加到not()
,但我需要應用到每個輸入格式input
,textarea
和select
。請記住,這些元素是動態的,所以我用.on()
而非.change()
。
我怎樣才能鏈.not()
功能與動態元素?所以我一直選擇完整,並通過在.not()
功能的所有不必要的元素?
這很好地工作,我已經添加在'if'聲明缺少支架。乾杯。 – MacMac 2013-03-20 22:25:41
不客氣? – adeneo 2013-03-20 22:26:38
這是一個cookie? – MacMac 2013-03-20 22:27:24