可以通过jquery设置值在名称包含方括号的属性上

时间:2017-09-22 08:39:26

标签: jquery jquery-selectors

假设我有一个带相册的Angular应用程序。当用户点击图像时,全尺寸照片将显示内部模态。在模态内部我需要在用户点击图片时动态更改img元素的属性[src]。

<img [src]="" />

所以内部脚本,点击之后应该是这样的:

var $myelement =$("img");
$myelement.attr('[src]', 'http://google.com');

我尝试了很多方法如何设置[src]属性但没有成功的结果。我该如何修复它,需要方括号。 上面的示例产生以下错误:Uncaught(在promise中):InvalidCharacterError:无法在'Element'上执行'setAttribute':'[src]'不是有效的属性名。

谢谢

1 个答案:

答案 0 :(得分:1)

你应该可以使用

$myelement.attr('\\[src\\]', 'http://google.com');

为什么要在src属性周围加上括号? 你有没有理由不写

&#13;
&#13;
var $myelement =$("img");
$myelement.attr('src', 'http://via.placeholder.com/350x150');
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<img src="" />
&#13;
&#13;
&#13;