我想打開一個反饋窗口,並把一些js代碼裏面。這是我所做的:document.write js問題
$('#feedback').click(function(){
mw = window.open('','','width=560,height=460');
mw.document.write('<html><head>');
mw.document.write('<sc'+'ript type="text/javascript" src="{{STATIC_URL}}js/jquery-1.9.0.js"></scri'+'pt>');
mw.document.write('<sc'+'ript type="text/javascript"> function feedbacken(){'+
'var catg = $("#catg").text(); var feedback = $("#feedback").text(); alert(catg feedback);'
+'}</scri'+'pt>');
mw.document.write('</head><body>');
mw.document.write('<div style="padding-left: 30px;">');
mw.document.write('<br/> Bitte wählen Sie die Kategorie aus: <br/> ');
mw.document.write('<select id="catg"><option>--</option><option>Technisch</option> <option>Inhalt</option><option>Design</option></select>');
mw.document.write('<br/><br/>Hier bitte Ihr Feedback:');
mw.document.write('<p><textarea id="feedback" style="width:400px;height:100px"> </textarea></p>');
mw.document.write('<button onclick="feedbacken()"> Jetzt absenden </button>');
mw.document.write('</div>');
mw.document.write('</body></html>');
});
現在,窗口打開罰款,但一旦我點擊按鈕,它說。 feedbacken()
功能未定義。
有人可以破解這對我來說:)
這是我的反饋元件:
<a id="feedback">Feedback</a>
首先,我認爲你可以通過將HTML放在單獨的文件中並打開一個顯示該文件的新窗口而不是使用document.write來清除所有這些。這將使調試變得容易很多。 – orb
如果我在教學,我會用這個作爲一個真實世界的例子,不要做什麼。有太多的錯誤和更好的方法去實現它。 – vol7ron
@ vol7ron,真的嗎?你能告訴我更好的做法嗎?我也不喜歡這種方式 – doniyor