0

我想访问HTML 标题属性的值作为onclick函数的变量。

这是我的 HTML 元素的示例:

<a title="id:4" onclick="openWin(4)">example</a>

这是我的JavaScript函数:

function openWin(number)
{
    window.open("http://www.some-example.org/some/example/id:"+number)
}

这可行,但由于我有很多 HTML 元素,我想找到一种方法来引用openWin()函数中的标题值,而不是写“openWin(someNumber)”。你有什么想法如何做到这一点?

任何帮助将非常感激!

4

6 回答 6

4

你可以这样做:

HTML:

<a title="id:4">example</a>

JavaScript:

$(function(){
     $('a[title]').click(function(){
         window.open("http://www.some-example.org/some/example/"+this.title)
     });
});
于 2013-09-04T09:56:57.987 回答
3
$('a').on('click', function () {
    var number = this.title.replace('id:', '');
    window.open("http://www.some-example.org/some/example/id:" + number)
});
于 2013-09-04T09:57:13.340 回答
3

如果您只需要来自 Title 的 Number 值,这是解决方案:

HTML

<a title="id:4" onclick="openWin(this)">example</a>

JS

function openWin(el)
{
    window.open("http://www.some-example.org/some/example/id:"+el.title.split(':')[1]);


}

这是实时网址

http://jsbin.com/eGUCoWU/4/edit

于 2013-09-04T10:07:17.147 回答
1

这个怎么样

$('a').click(function(){
    titleVar = $(this).attr('title').slice(3,4);
    ... do something with titleVar
 });

我可能没有得到正确的切片参数,但是,这将获取标题属性,删除“ID:”位并将数字单独放入“titleVar”。然后,您可以使用 titleVar 做任何您想做的事情。

于 2013-09-04T10:12:18.123 回答
1
$('a').click(function(){
  window.open("http://www.some-example.org/some/example/id:"+ $(this).attr('title').split(':')[1]);
});
于 2013-09-04T10:23:49.830 回答
-1

在您的事件处理函数内部,this将是触发事件的 HTML 元素。

HTML 元素有一个title包含 title 属性值的属性。

onclick="var foo = this.title"

然后,您可以随心所欲地使用foo.

于 2013-09-04T09:57:18.167 回答