I wan't to define individual popup templates for different vectorlayers in Openlayers 3.

 The layers are defined with the following options (that are passed to a constructor-function):

    n2k_dh_l = new ol3Vector({
                map: map,
                title: "Natura 2000 Habitats Directive_ol3Vector",
                attribution: "<br />Réseau Natura 2000 Habitats Directive",
                geotable: "n2k_dh",
                fields: "gid as id,sitecode,sitename,surfha",
                where: "sitename ilike '%moselle%'",
                fill: "rgba(100,250,0,0.1)",
                stroke_color: "green",
                stroke_width: 2,
                minResolution: 0.01,
                maxResolution: 50,
                content: "'<p><strong> HD' + feature.get('sitecode') + '</strong><hr>' + feature.get('sitename') + '<br />' + feature.get('surfha') + ' ha </p>'"
    	
    });

To build the content of the popups I use the following code:

    map.on('click', function(evt) {
      var feature = map.forEachFeatureAtPixel(evt.pixel,
        function(feature, layer) {
          return feature;
      });
          var popupcontent = map.forEachLayerAtPixel(evt.pixel,
        function (layer) {
          return layer.get('content');
      });
       
    if (feature) {
      popup.setPosition(evt.coordinate);
      var content = popupcontent;
    //  -- This code works, but is static
    //var content = '<p><strong>' + feature.get('sitecode')+'</strong><hr>'+ feature.get('sitename') + '<br />' + feature.get('surfha') + ' ha </p>';
    //      
      $(popup_div).attr( 'data-placement', 'auto' );
          $(popup_div).attr( 'data-content', content );
          $(popup_div).attr( 'data-html', true );  
      $(popup_div).popover();
      $(popup_div).popover('show');
    } else {
      $(popup_div).popover('destroy');
    }
    });

My problem is that the content-string (from my layer options) is passed to the data-content of the popup_div, but the code is not evaluated (as in the outcommented version). It is passed as string.

I've tried to remove the " at the beginning and the end of the string with RegEx, but this didn't change anything.

    var content = popupcontent.replace(/^"(.+(?="$))"$/, '$1');

How can I pass my popupcontent so that it gets evaluated?