Как передать значения формы в новое окно? - PullRequest
0 голосов
/ 03 октября 2018

У меня есть форма, которую нужно распечатать в новом окне.Я мог бы передать innerHTML формы, но, кажется, не получить значения.Вот пример кода:

print: function(){
var formPanel = Ext.getCmp('formPanelId');
var formValues = formPanel.getValues(); //this has data but it does not load on the new Window
var myWindow = window.open('', '', 'width=200,height=100');
myWindow.document.write('<html><head>');
myWindow.document.write('<title>' + 'Title' + '</title>');
myWindow.document.write('<link rel="Stylesheet" type="text/css" href="http://dev.sencha.com/deploy/ext-4.0.1/resources/css/ext-all.css" />');
myWindow.document.write('<script type="text/javascript" src="http://dev.sencha.com/deploy/ext-4.0.1/bootstrap.js"></script>');
myWindow.document.write('</head><body>');
myWindow.document.write(formPanel.body.dom.innerHTML);
myWindow.document.write('</body></html>');
}

Как передать значения формы в новое окно?Я ценю любые советы по этому вопросу.Спасибо!

1 Ответ

0 голосов
/ 03 октября 2018

Если вы хотите передать эти значения в Ext.window.Window, вы можете просто сделать это при создании окна Ext следующим образом:

print: function(){ 
 var formPanel = Ext.getCmp('formPanelId');
 var formValues = formPanel.getValues();
 var myWindow = Ext.create('YourWinodw', {formPanelValues:formValues}); // now in myWindow there is property formPanelValues that hold that value
}

Если вы используете простой window.document.write в качестве вашегоВы делаете выше, вам нужно немедленно записать значения следующим образом

myWindow.document.write('<html><head>');
myWindow.document.write('<title>' + formValues['fieldName'] + '</title>'); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...