使用javascript单击HREF

时间:2015-11-20 16:12:44

标签: javascript jquery

我处于这样一种情况:我无法使用jquery在DOM中选择一个元素,并试图弄清楚如何使用Javascript来完成它。

jquery路径为sequelize model:create --name Task --attributes title:string,content:string

我试图访问href并在新标签中打开它。

我找到了这个 - http://javascript.info/tutorial/searching-elements-dom并尝试了

"use strict";
module.exports = function(sequelize, DataTypes) {
  var User = sequelize.define("User", {
    username: DataTypes.STRING
  }, {
  classMethods: {
     associate: function(models) {
       // create one to many relationship
       User.hasMany(models.Task);
     }
  }
  });
  return User;
};

但我收到了错误:

$('.link-linkedin a').attr('href');

有更好的方法吗?

3 个答案:

答案 0 :(得分:3)

// where `linkIndex` , `aIndex` are index of each respective element
// to be selected from collections returned by `.getElementsByClassName` ,
// `.getElementsByTagName`
var linkIndex = 0, aIndex = 1;
var elem = document.getElementsByClassName('link-linkedin')[linkIndex];
var list = elem.getElementsByTagName('a')[aIndex];
var href = list.href;

答案 1 :(得分:1)

你不需要javascript。只需将target="_blank"添加到您的锚元素即可。

这样的事情:

<a href="whatever" target="_blank">whatever</a>

单击它时,将在新选项卡上打开链接。

答案 2 :(得分:0)

我将继续把它作为答案。首先,目前还不清楚你要做什么,但有些事情会对你的代码有所帮助。

在每条指令的末尾放置分号。

不要调用变量“list” - 列表 - 使用更好的命名,并避免使用可用作保留字的单词。

如果您尝试引用DOM中的元素,请为其指定一个ID,然后使用document.getElementById来获取它。

<a href="~/Customers.html" id="LinkToCustomers" target="_blank">Customers</a>

并在您的javascript中引用它:

var ListOfCustomers = document.getElementById("LinkToCustomers");
window.open(ListOfCustomers.getAttribute("href"));