2015-03-13 117 views
0

我有一个表单正在处理jQuery的AJAX请求,并在控制台中出现错误;权限被拒绝访问属性“类型”

Error: Permission denied to access property 'type'

在第5行 jquery.min.js文件

,山坳3395.

jQuery的

<script language="javascript"> 
(document).ready(function() { 
    $('#emvForm').submit(function(event) { 
     event.preventDefault(); 
     var email, nm; 

     email = $('#emailfield').val; 
     nm = $('#namefield').val; 

     if (email != '' && nm != '') { 
      $.ajax({ 
       type: 'post', 
       url: '/ajax/enewsletter_subscribe', 
       data: { 
        'email': email, 
        'name': nm, 
       }, 
       success: function(data) { 
        $('#form-nlfm').slideUp(200).html('<h2>Thank You</h2><p class="text-center">You are now signed up to our mail list.</p>').slideDown(500); 
       }, 
      }); 
     } 
    }); 
}); 
</script> 

HTML

<form accept-charset="utf-8" action="" id="emvForm" method="POST" name="emvForm" role="form" target="_top"> 
<div class="result"></div> 
<div class="form-area col-xs-10 col-xs-offset-1" id="form-nlfm"> 
<div class="form-group"><input class="form-control" id="namefield" name="name" placeholder="Your Name" size="30" type="text" value="" /></div> 
<div class="form-group"><input class="form-control" id="emailfield" maxlength="64" name="email" placeholder="Your Email Address" size="30" type="text" value="" /></div> 
<p class="text-center"><button id="nlfm-submit" class="submit button">Subscribe</button></p> 
</div> 
</form> 

我试图改变选择,重命名变量和其他类似的东西。

+0

我看不出它是如何创建的症状,但是这和其他人喜欢它是错误的:'email = $('#emailfield')。val;'jQuery的'val'是一个*函数*,您必须将其称为:'email = $('#emailfield')。val() ;' – 2015-03-13 14:16:51

+0

它是'jquery.min.js'文件的第5行和第3395行。 – worldofjr 2015-03-13 14:37:35

+1

然后下一步是使用unminified文件并查看错误发生的位置。除了我强调的'val'之外,我看不到任何不妥之处。尝试创建一个[MCVE](/ help/mcve),通常会标记问题。 – 2015-03-13 14:41:12

回答

0

如果你有这样的:

email = $('#emailfield').val; 
nm = $('#namefield').val; 

应该是这样,因为jQuery的val是一个函数:

email = $('#emailfield').val(); 
nm = $('#namefield').val(); 
相关问题