2013-03-15 61 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; 
});