打印输入字段中的内容

时间:2017-06-26 10:03:03

标签: javascript typescript input knockout.js printing

我有一个填充了输入的简单页面,我需要使用用户输入的内容打印它们。

到目前为止,我可以打印输入字段,但内部始终为空。

class Foo{
    int* myIntP;
    int& get_impl() const{
       return *myIntP; // even if Foo instance is const, *myInt is not
    }
public:
    int& get(){return get_impl();}
    const int& get() const{return get_impl();}

    Foo() : myIntP(new int(0)){}
    ~Foo(){delete myIntP;}
};

#include<cassert>

int main(){
    Foo f1; 
    f1.get() = 5;
    assert( f1.get() == 5 );

    Foo const f2;
//    f2.get() = 5; // compile error
    assert( f2.get() == 0 );    
    return 0;
}
class VM{

PrintDiv() {
        let self = this;
        var printContents = document.getElementById('print').innerHTML;
        var originalContents = document.body.innerHTML;

        document.body.innerHTML = printContents;
        window.print();
        location.reload();
    }
  }  
    
    ko.applyBindings(new VM);

1 个答案:

答案 0 :(得分:0)

好吧,您希望从输入字段中获取文字,但是您要从ID div的整个print获取HTML。这是一个简单的解决方法。

class VM {

  PrintDiv() {
    let input = <HTMLInputElement> document.getElementById('print');
    let printContents = input.value;
    document.getElementById('content').innerText = printContents;
    location.reload();
  }
  
}

ko.applyBindings(new VM);
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>
<div>some text<input id="print" /></div>
<br />
<button data-bind="click: PrintDiv">Print</button>

<div id="content"></div>