jQuery: $(element).text() 不起作用
jQuery: $(element).text() doesn't work
我正在动态生成内容 -div 中带有链接。单击链接时,链接应弹出一个包含链接文本的弹出窗口(showMyText 函数)。相反,我得到一个空字符串:(
为什么这不起作用?我已经搜索了Stackoverflow和jQuery API,它应该可以工作。
function a(){
var div=document.createElement("div");
div.innerHTML='<a class="aClass" href="javascript:showMyText(this)">Link Text</a>';
var parent_div=document.getElementById('dinamicni_div');
parent_div.appendChild(div);
}
function showMyText(link){
var txt=$(link).text();
alert(txt);
}
如果你使用 jQuery 来获取text()
为什么不把它也用于其他所有事情呢?
function a() {
var $div = $("<div></div>");
var $a = $("<a></a>")
.attr("href", "#")
.addClass("aClass")
.text("Link text")
.appendTo($div);
$div.appendTo("#dinamicni_div");
}
$("#dinamicni_div").on('click', '.aClass', function() {
alert($(this).text());
});
示例小提琴
将代码更改为:
div.innerHTML='<a class="aClass" onclick="showMyText(this)">Link Text</a>';
jsFiddle 示例。
我会采取稍微不同的方法并使用"live"方法,该方法允许您在将 click 事件插入 DOM 后将其绑定到动态创建的元素
$(document).ready(function(){
$('#dinamicni_div').html('<a class="aClass" href="#">Link Text</a>');
$(".aClass").live('click',function(){
alert($(this).text());
});
});
我发现text()
在用户手动编辑文本区域后停止工作。 val()
继续按预期工作。
相关文章:
- electronic BrowserWindow的最小高度和宽度在hide()show()方法之后不起作用
- 监视函数从服务返回不起作用,但作用域函数起作用
- 幻灯片滚动javascript不起作用
- 简单的javascript在Shopify中不起作用
- Recaptcha在IE7和IE8中不起作用
- Ember Data DS.Model's set函数不起作用
- JsFiddle上的鼠标事件不起作用
- 我的AngularJS表达式没有'不起作用
- <text区域>在我的html中包含event.keycode==13之后,wrap就不起作用了
- getDocument by id/get input text from button dons'不起作用
- 带有 AJAX 响应或 AJAX 响应的 IF 条件.响应.Text 不起作用
- 如果iframe在src(pdf或text)中有非html文档,则iframe中的onload不起作用
- Google Closure Linter 在 Sublime Text 2 for Windows 中不起作用
- .text () 和 .html() 在 Jquery 中不起作用
- .html和 .text 不起作用
- jQuery: $(element).text() 不起作用
- 挖空模板在使用 RequireJS 和 Require Text 的 IE 8 中不起作用
- $(this).find(“.text”)和(“.loading”)在AJAX成功函数内部不起作用
- jQuery 'text' 不起作用
- Jquery选择器-text等于-不起作用