Reputation: 143
I came across this APIserver
to generate the QRCode but I was wondering is it possible to just use HTML to generate the QRcode for example this is what I was thinking
<input id="text" type="text" value="Please Enter Your NRIC or Work Permit" style="Width:20%"/>
<img src="https://api.qrserver.com/v1/create-qr-code/?data=HelloWorld&size=100x100" alt="" title="HELLO" />
In the "title" I believe it is where you will write your text and the QR code would generate, I was wondering how can I create a text box for me to key in the value directly on a website.
Upvotes: 14
Views: 127078
Reputation: 37029
Were you thinking of something like this? https://jsfiddle.net/v7d6d1ps/
Your HTML can be similar to what you have but with added onblur event. Only HTML cannot do this, so I have added jQuery/JavaScript combination.
function generateBarCode() {
var nric = $('#text').val();
var url = 'https://api.qrserver.com/v1/create-qr-code/?data=' + nric + '&size=50x50';
$('#barcode').attr('src', url);
}
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<input id="text" type="text" value="NRIC or Work Permit" style="Width:20%" onblur='generateBarCode();' />
<img id='barcode' src="https://api.qrserver.com/v1/create-qr-code/?data=HelloWorld&size=100x100" alt="" title="HELLO" width="50" height="50" />
Copy and paste this into an HTML file on your desktop. Type in the text box 12345 and hit tab. Notice that the QR code will update.
Upvotes: 20
Reputation: 1
Here is a QR code containing a phone number and URL:
<!DOCTYPE html>
<html>
<head>
<title>QR Code</title>
</head>
<body>
<h1>QR Code for your information</h1>
<div id="qrcode"></div>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/[email protected]/qrcode.min.js"></script>
<script>
new QRCode(document.getElementById("qrcode"), {
text: "tel:+1234098765\nhttp://example.com/",
width: 256,
height: 256,
colorDark: "#000000",
colorLight: "#ffffff",
correctLevel: QRCode.CorrectLevel.H
});
</script>
</body>
</html>
Upvotes: 0
Reputation: 1164
You can use the snippet below, as the simplest way:
function UpdateQRCode(val){
document.getElementById("qrcode").setAttribute("src","https://api.mimfa.net/qrcode?value="+encodeURIComponent(val)+"&as=value");
}
document.addEventListener("DOMContentLoaded", function(){
UpdateQRCode(document.getElementById("qrcode").value);
});
<input onchange="UpdateQRCode(this.value)" value="Hello World..."/><br>
<iframe id="qrcode" src="" width="250" height="250"></iframe>
Enjoy...
Upvotes: 2