如果动态元素通过条件,则更改其属性

时间:2017-04-14 06:08:33

标签: javascript jquery if-statement dynamic attr

我有一个函数'refreshDisplay',它将帮助我创建动态元素。 现在,我的情况很小。 在图像的'src'属性中,我将检查obj.picture.thumbnail是否以'/ content'开头,然后添加'.jpg'作为'src'属性的扩展名,否则什么都不做!< / p>

请在代码中使用“.myLink”类检查图像。 我该如何实现这一目标?

这是代码。

function refreshDisplay() {
  $('.container').html('');
	savedData.forEach(function (obj) {
	// Reset container, and append collected data (use jQuery for appending)
	  $('.container').append(
			$('<div>').addClass('parent').append(
				$('<label>').addClass('dataLabel').text('Name: '),
				obj.name.first + ' ' + obj.name.last,
				$('<br>'), // line-break between name & pic
				$('<img>').addClass('myLink').attr('src', obj.picture.thumbnail), $('<br>'),
			  $('<label>').addClass('dataLabel').text('Date of birth: '),
				obj.dob, $('<br>'),
				$('<label>').addClass('dataLabel').text('Address: '), $('<br>'),
				obj.location.street, $('<br>'),
				obj.location.city + ' ' + obj.location.postcode, $('<br>'),
				obj.location.state, $('<br>'),
				$('<button>').addClass('removeMe').text('Delete'),
				$('<button>').addClass('top-btn').text('Swap with top'),
				$('<button>').addClass('down-btn').text('Swap with down')
			)	
		);
	})
	// Clear checkboxes:
	$('.selectRow').prop('checked', false);
	handleEvents();
}

2 个答案:

答案 0 :(得分:1)

您可以使用private async void OnMainWindowLoaded(object sender, RoutedEventArgs e) { for (var i = 0; i < 50000; i++) { var rect = new Rectangle { Fill = new SolidColorBrush(Colors.Gray), Width = 200, Height = 290, Margin = new Thickness(5,0,5,5) }; Others.Children.Add(rect); await System.Windows.Threading.Dispatcher.Yield(); } } .attr(function)RegExp.protytpe.test() RegExp匹配问题中描述的字符串,条件运算符连接^\/content/或返回现有{{1或空字符串。

".jpg"

答案 1 :(得分:1)

替换

$('<img>').addClass('myLink').attr('src', obj.picture.thumbnail), $('<br>'),

使用

$('<img>')
    .addClass('myLink')
    .attr('src', 
        obj.picture.thumbnail +
        ( obj.picture.thumbnail.indexOf( '/content' ) === 0 ? '.jpg' : '' ) ), 
$('<br>'),