2013-03-15 90 views
0

我在JavaScript文件中存在以下代碼。當這個表單發生點擊時,我想要執行postAction函數。儘管我看到postAction中的代碼行被處理(通過web開發人員),但出於某種原因,postAction函數看起來似乎已成功執行。我懷疑它必須做些什麼preventDefaultreturn false。查看以下代碼的任何問題?功能在提交操作過程中未成功執行

ssoWelcome: (function() { 
    var $p = $('<form class="full controls"><p>Welcome <span class="username"></span>!</p><input type="submit" value="Continue" name="welcome" class="welcomeBtn"></form>'); 
    $p.submit(function (e) { 
     C.options.postAction('redirect'); 
     preventDefault(e); 
     return false; 
    }); 
    return $p; 
}()) 
+0

所以你要提交一個動態的形式? – 2013-03-15 17:43:12

+0

除了按鈕,此表單上沒有任何內容。點擊按鈕後,我想執行一些功能。 – neelmeg 2013-03-15 17:56:01

回答

0

我認爲你是對的,因爲它的東西做preventDefault。該生產線

preventDefault(e); 

應該

e.preventDefault(); 

然而,假設這是jQuery的,在return false確實爲e.preventDefault(),所以你不需要調用它自己同樣的事情。

0

首先你不應該做:

e.preventDefault(); 

也許這將有所幫助。

0

這可以簡單地獲得文檔中附加形式和這樣的現場表演功能:

var $p = $('<form class="full controls"><p>Welcome <span class="username"></span>!</p><input type="submit" value="Continue" name="welcome" class="welcomeBtn"></form>'); 
$(document).append($p); 

$('.welcomeBtn').live('click', (function (e) { 
    //do your function here 
    return false; 
});