从函数外部访问变量?
问题描述:
我有一个Javascript函数,并希望从函数外部检索id值。如何使“id”成为一个静态变量并从函数外部访问它。从函数外部访问变量?
<input type="text" name="editinput" id="editinputtext" placeholder="Type Contribution...">
<script>
$(".contributions").click(function(){
var id = this.id;
});
document.getElementById("editinputtext").value = id;
答
你只需要在函数之外声明变量。
<script>
var id;
$(".contributions").click(function(){
id = $(this).attr("id");
});
document.getElementById("editinputtext").value = id;
</script>
答
我认为你想要做的比你想象的要简单。变量id
将不会有任何值,并将为undefined
,直到调用实际的点击功能。
所以你可以做的是定义点击函数中的变量,并将其直接分配给editinputtext
。但是你也使用jQuery,所以你也可以用这种方式分配它。
<input type="text" name="editinput" id="editinputtext" placeholder="Type Contribution...">
<script>
$(".contributions").click(function(){
var id = this.id;
$("#editinputtext").val(id);
});
</script>
+0
谢谢,但我认为我发现解决方案作为我使用的第三方软件包导致了问题,在删除它之后,我可以访问id的值。 –
注意'id'将是'undefined'这里的时候,它分配给'value'和它看起来并不像是一个永远不会改变... – deceze
当我运行它,它说,该值是不确定的,虽然我尝试了console.log,它返回了“id”的值。 –
@Hadi是的,因为*执行'click'函数时*。你为什么不在''click''函数内分配'editinputtext' ***? – deceze