使用存储在变量中的ID设置标签的值

时间:2016-01-06 07:32:11

标签: javascript jquery html

已经四处寻找,找不到任何可以回答这个问题的事情。

我有一个模态形式的表格,它具有折扣或标准的预设价格,因此我将定价值存储在两个JS对象中。还有另一个JS数组,其中包含价格设置的项目。

当预订模式打开时,我有以下循环运行,并以正确的价格填写每个项目的标签(无论是先前确定的折扣价格还是标准价格)。

<VideoView
    android:id="@+id/myVideo"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true"
    android:layout_alignParentTop="true"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_centerInParent="true"/>

我遇到问题的是我想使用labelID以正确的价格正确填充目标标签,但我认为我没有正确使用标签中的labelID变量代码[id = *]部分。

我已经测试了硬编码标签ID,以确保我可以实际拉出正确的密钥:值数据,这一切都正常工作,就在我使用具有连接ID名称的变量时。我确定它的语法错误只是无法解决问题。

希望有人能够指出我如何动态设置我想要填充的标签的ID。

编辑:对于已经回复的人,对不起,此功能是一个更大的JS文件的一部分,该文件负责预订表单的其他部分。

由于

3 个答案:

答案 0 :(得分:0)

您的代码正在查找ID labelID,因为您将其用作字符串。

替换它:

$(e.currentTarget).find('label[id=labelID]').text(price[index]);

由此:

$(e.currentTarget).find("label[id='"+labelID+"']").text(price[index]);

由于你没有提供任何演示,我无法测试整个事情。

答案 1 :(得分:0)

只需使用

$('#' + labelID).text(price[index]);

答案 2 :(得分:0)

基于这样一个事实,一个元素的id应该是独一无二的,那么你就不必编写这么多代码来改变文本。你可以简单地使用like,

$("#"+labelID).text(price[index]);