参数lis之后的未捕获的SyntaxError:missing)

时间:2015-07-15 06:06:26

标签: jquery

  在参数lis

之后

Uncaught SyntaxError:missing)

<input id="BUXAR" name="BUXAR" onclick="SearchDistict(BUXAR);" type="checkbox" value="33">

<input id="CHAMPARAN EAST" name="CHAMPARAN EAST" onclick="SearchDistict(CHAMPARAN EAST);" type="checkbox" value="34">
  

我的功能

function SearchDistict(obj) 
{
  debugger;
  if (obj.checked) 
   {
     districtCollection.push(obj.value);
   }
  else
  {
     districtCollection.pop(obj.value);
  }
}

2 个答案:

答案 0 :(得分:1)

由于您将字符串文字作为函数参数传递,因此需要将其括在引号

<input id="CHAMPARAN_EAST" name="CHAMPARAN EAST" onclick="SearchDistict('CHAMPARAN EAST');" type="checkbox" value="34">

服务器端

<input id="<%=d.DistrictName %>" name="<%=d.DistrictName %>" onclick="SearchDistict('<%= d.DistrictName%>');" type="checkbox" value="<%=d.DistrictId %>"><%=d.DistrictName %>

答案 1 :(得分:0)

在传递给onclick函数的string周围加上引号:

onclick="SearchDistict('CHAMPARAN EAST');"
//                     ^              ^

对于动态元素:

<input id="<%=d.DistrictName %>" name="<%=d.DistrictName %>" onclick="SearchDistict('<%= d.DistrictName%>');" type="checkbox" value="<%=d.DistrictId %>"><%=d.DistrictName %>

更好的方式:

作为您在函数中想要的name,您可以使用element.name来获取它。

请参阅以下代码中突出显示的评论:

HTML:

<input id="BUXAR" name="BUXAR" onclick="SearchDistict(this);" type="checkbox" value="33">
<!--                                                  ^^^^ Pass the element instance to the function -->

使用Javascript:

<script type="text/javascript">
function SearchDistict(el) {
    el.name // Get name of element
    ...
}

</script>