Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript函数中的jquery不起作用_Javascript_Jquery_Syntax - Fatal编程技术网

javascript函数中的jquery不起作用

javascript函数中的jquery不起作用,javascript,jquery,syntax,Javascript,Jquery,Syntax,我正在从razor代码中调用javascript函数..但是javascript函数中的jquery代码没有执行 正确的做法是什么 function getPosition(id) { var c = '#' + id; return $c.index(); } 我的HTML表格 <tbody> <tr> <td> @foreach(Result geResults in Model.r

我正在从razor代码中调用javascript函数..但是javascript函数中的jquery代码没有执行

  • 正确的做法是什么

    function getPosition(id) {
      var c = '#' + id;
     return $c.index();
    }
    
我的HTML表格

  <tbody>
      <tr>

         <td>
            @foreach(Result geResults in Model.results)
            {
            @:
              <script>
              {
               getPosition(@geResult.assessmentId);
              }
              </script>
             }
         </td>

      </tr>
  <\tbody>

@foreach(结果geResults in Model.results)
{
@:
{
getPosition(@geResult.assessmentId);
}
}
更新

由于每个人都感到困惑,我发布了更多的细节

<table>
    <thead>
            <tr>
            @foreach (Assessment geAssessment in Model.assessments)
                {
                    <th id=@geAssessment.AssessmentID>@geAssessment.Name</th>
                }

@foreach(模型评估中的评估)
{
@geAssessment.Name
}


@{
//为正文中的每个评估添加td
foreach(模型评估中的评估)
{
@foreach(ShortResult-geResult-in-Model.results)
{
@:
{getPosition(@geResult.assessmentId);
}
}
}
}
我想在getPosition函数中返回列索引,然后在td中打印。希望这能消除任何混淆


目前它说getPosition是断章取义的,而intellisense在我编码时显示getPosition,只需将
c
放在括号中即可。它将是这样的:

function getPosition(id) {
  var c = '#' + id;
 return $(c).index();
}
如果它不扔

$Undefind错误


首先检查传递的值是否意味着getPosition(“”)不为null,然后在JavaScript中写入

function getPosition($id) {
  var c = '#' + $id +;
 return $(c).index();
}

您想要实现什么?
$c
未定义。你的意思是
$(c)
。试试这个
返回$('#'+id).index()。你也需要访问这个我不认为这是如何工作的。。。您可能需要添加一个带有onload的元素来加载函数。我不知道razor的代码,所以我也不知道,但这看起来就是错的。尝试添加一个console.log并在控制台上获取一些内容。这个
@geResult.assessmentId
的值是多少?您是否有id为@geResult.assessmentId的值的元素?从
id
更改为
$id
是毫无意义的,引入了错误的语法,您没有用
$c
解释问题。实际上,我在td中将此id定义为:@geAssessment.Name,然后我尝试在tbody中为每个结果找到正确的标题/列…它以前被调用过,现在它说getPosition在当前上下文中不存在。我已经描述了我的代码这里的详细信息:这个答案看起来不错,但我无法测试,因为错误请参阅更新
function getPosition($id) {
  var c = '#' + $id +;
 return $(c).index();
}