このコードは正常に機能します。
<a href="#" onClick="MyWindow=window.open('{{ path('metadata', {'id': q.id}) }}',
'MyWindow', 'toolbar=yes, location=no, directories=yes, status=yes,
menubar=yes, scrollbars=yes, resizable=no, width=600, height=800');
return false;">Quotes Metadata</a>
しかし、私は自分のhtmlにjsを入れたくありません。
分離しようとしましたが、いくつか問題がありました。
これは私がやったことです:
これをテンプレートに追加しました:
{% block javascripts %}
<script src="{{ asset('bundles/acmequotes/js/popup.js') }}" type="text/javascript"></script>
{% endblock %}
上記のコードを次のように変更しました。
<a href="#" id="popup">Quotes Metadata</a>
私のpopup.js:
var popupObj = document.getElementById("popup");
popupObj.addEventListener('click', function () {
window.open( "link", "myWindow",
"status = 1, height = 300, width = 300, resizable = 0" )
},false);
最初の問題は、popupObjがnullであるということです。これは、Firebugが、nullオブジェクトに対してaddEventListenerを呼び出すことができないと言っているためです...
そして2番目-これは.jsファイルなので、どのように設定"link"
するの{{ path('metadata', {'id': q.id}) }}
ですか?
私はjsについて何も知らないので、それを機能させるために私を助けてください!事前にどうもありがとうございました!