【问题标题】:How can I read id from jquery variable [duplicate]如何从 jquery 变量中读取 id [重复]
【发布时间】:2020-03-19 08:53:23
【问题描述】:
 var $div = $('<div/>', {
         css: css,
         id: "testId" + product.id
 });

如何从这个$div 访问这个id..

现在我在从 html 获取时对其进行了硬编码,如下所示:

$('#testId_a2732d9e-db81-4c2f-85aa-563856e53ff4').css('background', '');

但我想从这个$div直接在我的javascript文件中访问它

谢谢

【问题讨论】:

  • $div.prop('id')
  • @RoryMcCrossan 感谢您的帮助,伙计,看起来它正在获取 id,但现在它说 $div.prop(...).css 不是函数,可能是什么
  • 那是因为prop() 返回一个字符串。你不能在字符串上调用css(),你需要一个jQuery对象,它在$div变量中。

标签: javascript jquery html


【解决方案1】:

你可以使用.prop():

var product = { id: "abcd" };

var $div = $('<div/>', {
   id: "testId" + product.id
 });
 
 console.log($div.prop('id'));
&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"&gt;&lt;/script&gt;

【讨论】:

  • 感谢您的帮助,但现在有了这个修改,我得到了这个错误`$div.prop(...).css` is not a function
  • @Roxy'Pro 你说你想得到 ID。 ID 是一个字符串,所以它没有.css() 方法。你想做什么?
【解决方案2】:

只要你可以访问这个变量,那么

$div.attr('id')

【讨论】:

  • 在处理 Element 对象的属性时使用prop()
  • @RoryMcCrossan 是的
【解决方案3】:

使用attr()方法获取任意属性值。

$div.attr('id')

【讨论】:

  • 在处理 Element 对象的属性时使用prop()
  • 是的,但是id HTML 属性与属性有 1:1 的映射关系。因此,在这种情况下,我们将得到相同的结果。对吗?
  • @KumarSwapnil 可能,但是当你想要一个元素的属性时,使用.prop() 比使用.attr() 更好。
猜你喜欢
  • 2014-03-05
  • 2013-04-19
  • 1970-01-01
  • 2018-02-17
  • 1970-01-01
  • 2017-01-17
  • 2023-04-10
  • 2015-06-19
  • 2014-04-20
相关资源
最近更新 更多