2017-05-29 52 views
0

我得到这个错误MVC函数未在onclick中定义?

Uncaught ReferenceError: updateShift is not defined at HTMLAnchorElement.onclick`

我已经在寻找这个问题,而不是固定我的。

所以这里是我的看法

<div class="dropdown-menu dropdown-anchor-top-left dropdown-has-anchor" id="data1"> 
    <ul> 
     @foreach(var shift in Model.ShiftModelList) 
     {  
      <li><a onclick="updateShift('@item.EmployeeId')">@shift.ShiftId</a></li> 
     } 
</div> 

JavaScript中的_layout.cshtml

function updateShift(empId) 
{ 
    $.post('@Url.Action("updateShift","jadwal")',{empId:empId } function(data) { 
     alert("suksess"); 
    }) 
} 

感谢您的帮助

+1

看起来像'comma'在{empId:em pId} –

+0

@MuhammedShevilKP我认为你是对的,我想念逗号。非常感谢你 –

回答

0

你可以试试这个,

$(document).ready(function() { 
    function updateShift(empId) { 
    $.post('@Url.Action("updateShift","jadwal")',{empId:empId } ,function(data) { 
     alert("success"); 
    }); 
    } 
}); 
+0

的代码工作:)。就像@穆罕默德所说的,我想念逗号。谢谢 –

1

您的看法正在布局之前渲染的,所以你需要用您的JavaScript文档就绪功能:

$(document).ready(function() { 
    function updateShift(empId) { 
    $.post('@Url.Action("updateShift","jadwal")',{empId:empId } function(data) { 
     alert("suksess"); 
    }) 
    } 
}); 

希望这有助于! :)

+0

我试过了,但错误依然存在。感谢帮助 –

0

我希望下面的链接提供错误的原因和解决方案。

https://stackoverflow.com/a/38372808/3397630

按我的理解,对于这种类型的错误,它似乎我们需要跨越检查两件事情。

  1. JavaScript函数的范围是有界的脚本文件的

  2. 适当的参考。

其他信息/同样的错误:https://forums.asp.net/t/2116708.aspx?Uncaught+ReferenceError+AddRecord+is+not+defined+at+HTMLButtonElement+onclick+

希望这会有所帮助,请让我知道你的想法或反馈 感谢

KARTHIK