使用jQuery的$(this)访问内部文本
Access inner text using $(this) with jQuery
我有一个按钮,我想使用jQuery记录内部文本,当该按钮被点击。我知道如何使用id来获取按钮($("#testID").text()
)的文本,但这不是我的选项。我想使用$(this)
关键字而不是id,但我不确定如何做到这一点。
<button id="testID" onclick="getButtonText()">Button Text</button>
javascript:
function getButtonText() {
console.log("this text = " + $(this).text()); //not working
}
通过this
<button id="testID" onclick="getButtonText(this)">Button Text</button>
javascript:
function getButtonText(self) {
console.log("this text = " + $(self).text()); //not working
}
否则,this
将是window
对象
您需要将调用者元素传递给函数…
function getButtonText(element) {
var $this = $(element);
console.log("this text = " + $this.text());
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button id="testID" onclick="getButtonText(this)">Button Text</button>
虽然正确的jQuery方法应该是这样做的…
$('#testID').on('click',function() {
console.log("this text = " + $(this).text());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button id="testID">Button Text</button>
你可以给它一个按钮上的类,然后每当一个类被点击,它将确定DOM,这是$(this)。例子:
在你的html文件:<button id="testID" class="test-btn">Button Text</button>
在你的脚本文件中:
$(document).ready(function () {
$(".test-btn").click(function(){
$("#message").text("The Text is: " + $(this).text() );
});
});
参见我的例子Plunker: http://plnkr.co/edit/e94QraQfCOzGlkirvTJj?p=preview
相关文章:
- 访问内部功能范围的元素,而不是敲除中的外部
- 如何访问内部框架 Html
- 如何使用Javascript访问内部函数
- 访问内部 ng 重复对象以适合表格
- 在这个 JavaScript 代码中,为什么有些函数可以访问内部变量,而另一些则不能
- 如何使用纯 JavaScript 访问内部和 iframe
- 允许在 HTML5 应用程序中访问内部网/本地文件的解决方案
- 访问内部属性名称以计算 ES6 中的新属性
- 访问内部帮助程序中的外部帮助程序的结果
- 如何使用jQuery从外部函数访问内部函数的变量
- Javascript:无法从外部传递的函数访问内部函数
- 如何从background.js访问内部资源
- 如何访问内部框架
- "node-r包.json“-如何访问内部对象
- 访问内部HTML元素并将其删除
- 访问“内部的值”;a“;标签,它在“;李;标签
- JavaScript对象结构:如何使用'complex.key'访问内部字段
- 用JavaScript访问内部DIV
- 如何在javascript对象中访问内部对象的属性
- 是否可以从外部url访问内部jQuery #链接(直接访问单个网站部分)?