I see that your back-end code fully renders the EJS view, merging the template and data to produce HTML. If the rendered view represents a complete HTML page, then you should be able to simply open a new window and supply the URL:
var url = '/selection/oui/?value=' + value;
window.open(url);
If the rendered view is HTML markup that must be inserted in the page, you will need to add another page to your application, and open that page.
window.open('EJSView.html?name=value');
I haven't tested this, but your new page must load the EJS view and append it to an element in the page.
<html>
<head>
<title>EJS View</title>
<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script>
$(function () {
var querystring = 'name=value';
var url = '/selection/oui/?' + querystring;
$.get(url, function (data) {
$("#ejs-view").append(data);
});
});
</script>
</head>
<body>
<div id="ejs-view"></div>
</body>
</html>
If you need to pass a query string to the new window, see How can I get query string values in JavaScript? for ideas how your new window can parse the values.