Javascript 函数参数超出范围时出现问题
我想让函数参数超出范围,但在这方面有一些问题 我试图通过以下代码获取值:Javascript 函数参数超出范围时出现问题,javascript,jquery,Javascript,Jquery,我想让函数参数超出范围,但在这方面有一些问题 我试图通过以下代码获取值:var text=$.commentString.text() JQuery: function addComment(commentString) { var container = $('#divComments'); var inputs = container.find('label'); var id = inputs.length + 1; var div = $('<
var text=$.commentString.text()代码>
JQuery:
function addComment(commentString) {
var container = $('#divComments');
var inputs = container.find('label');
var id = inputs.length + 1;
var div = $('<div />', {
class: 'CommentStyle'
});
$('<label />', {
id: 'comment' + id,
text: commentString
}).appendTo(div);
var $edit = $('<p />', {
class: 'edit',
text: 'Edit'
}).addClass('edit').appendTo(div);
div.appendTo(container);
}
$('#divComments').on('click','.edit',function () {
var text = $.commentString.text();
});
函数addComment(commentString){
var容器=$(“#divComments”);
var输入=container.find('label');
变量id=输入。长度+1;
var div=$(''){
课堂:“评论风格”
});
$('', {
id:'注释'+id,
文本:注释字符串
}).附件(分部);
var$edit=$(“”{
类:“编辑”,
文本:“编辑”
}).addClass(“编辑”).appendTo(div);
附件组(容器);
}
$('#divComments')。on('单击','.edit',函数(){
var text=$.commentString.text();
});
然后在函数外部声明一个变量:
var someCommentString;
function addComment(commentString) {
someCommentString = commentString;
...
在JavaScript中,不可能访问声明范围之外的变量。您可以在函数外部声明变量,但每次函数运行时它都会被覆盖-看起来这不是您所追求的行为
在本例中,您可以使用jQuery遍历DOM并找到所需的文本
$('#divComments').on('click','.edit',function () {
var text = $(this).parents(".CommentStyle").find("label").text();
});
或者你可以尝试其他方法来获取值,但不确定它是否正确
$('#divComments').on('click','.edit',function () {
$(this).prev().text()
});
什么是$.commentString
?