javascript - 停止加载单击的链接,并让周围的元素使用 Angularjs ng-click 处理该操作

标签 javascript jquery angularjs dom-events

我有一个类(class)表,最初我将每一行设置为可点击,然后在ng-view中切换模板。并显示类(class)的详细信息。我的问题是,我需要 Search Appliance 的抓取工具能够跟踪指向类(class)详细信息的链接,以便使它们可用于搜索。我通过在表格的一个单元格中添加指向类(class)标题的链接来完成此操作,但现在我遇到的问题是让学生实际上单击标题链接和表格行。在哪里/如何取消其中一项操作,最好是标题链接(我想阻止页面加载两次)?这是我的模板的摘录:

<thead>
    <tr>
        <th>Title</th>
        <th>Instructor</th>
        <th>Days</th>
        <th>Time</th>
    </tr>
</thead>
<tbody>
    <tr ng-repeat="course in catalog.courses | filter:isSubject" ng-click="loadCourse(course.regnum,course.id)">
        <td><a href="/schedule/#!/course/{{course.regnum}}/{{course.id}}">{{course.abbr}} {{course.num}} {{course.section}}: {{course.title}}</a></td>
        <td>{{course.instructor}}</td>
        <td>{{course.meeting_pattern}}</td>
        <td>{{course.start_time}} - {{course.end_time}}</td>
    </tr>
</tbody>

当有人单击第一个单元格中的链接时,ng-click 中的链接和行的功能都会起作用。被调用并且页面加载两次。我想停止链接href行动的发生,只让ng-click操作处理请求。

我知道我必须以某种方式停止传播,但是如果我在 <a> 上停止它元素会影响 <tr> 上的功能元素?

最佳答案

添加ng-click="$event.preventDefault();"到您想要停止的链接。

<tr ng-repeat="course in catalog.courses | filter:isSubject" ng-click="loadCourse(course.regnum,course.id)">
    <td><a href="/schedule/#!/course/{{course.regnum}}/{{course.id}}" ng-click="$event.preventDefault();">{{course.abbr}} {{course.num}} {{course.section}}: {{course.title}}</a></td>
    <td>{{course.instructor}}</td>
    <td>{{course.meeting_pattern}}</td>
    <td>{{course.start_time}} - {{course.end_time}}</td>
</tr>

此外,您错过了结束语 </a>在该链接上。

关于javascript - 停止加载单击的链接,并让周围的元素使用 Angularjs ng-click 处理该操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18705465/

相关文章:

javascript - 图像而不是单选按钮/文本?

javascript - Jquery-ui 自动完成功能在 IE8 中无法正常工作

javascript - 如何使用 Angular.js 引导多个模块显示在同一页面上

javascript - 使用滚动事件正确实现 GA 增强型电子商务 addImpression

javascript - Salvatore 无法在 Chrome 和 Safari 上运行

javascript - 使用 AjaxFileUpload 函数

javascript - 在 Angular 中有条件地添加 css 问题?

javascript - 单击主体上的任意位置即可执行功能 : directive

javascript - AngularJS比较两个日期

javascript - 如何通过 if 语句获取要更改的值