Truyền value từ jquery sang laravel
Em lấy giá trị thông qua ajax hiển thị lên dialog
<td colspan="4" style="border-top: none;">{{ QrCode::encoding('UTF-8')->size(80)->generate('') }}</td>$('#qrcode').html('SHĐ: '+data.sohopdong);
A/c nào biết cách để truyền giá trị này vào trong generate(' ' ) không ạ.
{{ QrCode::encoding('UTF-8')->size(80)->generate(' ' ) }}
3 CÂU TRẢ LỜI
Hi @napmucmayin
QrCode
được run tren server, còn $('#qrcode')
được run ở phía client sau khi trang tải xong. Về lý thuyết thì không thể nào truyền ngược lại được, vì code PHP sẽ run trước và compile thành trang html chứa các javascript, sau đó các javascript này sẽ được thực thi trên browser
Bạn có thể truyền trực tiếp giá trị vào hàm generate()
luôn.
Còn nếu vì lý do nào đó bạn cần phải thực hiện việc sinh ra QR code trên client side bằng javascript hoặc jquery. Bạn có thể tham khảo thư việc sau https://github.com/davidshimjs/qrcodejs
Hope this help!
Thay vì truyền như vậy thì bạn tạo bằng javascript rồi gán vào html luôn nhé
Cách 1:
How to use it:
- Load the latest version of jQuery library and jQuery qrcode plugin in the page.
- Create a container where you want to place the QR code.
Cách 2:
- Load the latest version of jQuery library from google CDN
- Load the jQuery ClassyQR after jQuery library
- Create a container to embed the QR Code
- Call the plugin with options // https://mucinhc.com/
Cách 3:
Step2: Make Ajax Request To Generate QR Code In ajax_generate_code.js file, we will make Ajax request to generate_code.php with required Form input values to generate QR code and display it.
$(document).ready(function() {
$("#codeForm").submit(function(){
.ajax({
url:'generate_code.php',
type:'POST',
data: {formData:("#content").val(), ecc:("#ecc").val(), size:("#size").val()},
success: function(response) {
$(".showQRCode").html(response);
},
});
});
});
Step3: Generate QR Code
In generate_code.php file, we will handle functionality with library PHP QR Code to create QR code image file with QRcode function png() in directory codes using form values and return generated QR code image to display on page.
<?php if(isset($_POST) && !empty($_POST)) { include('library/phpqrcode/qrlib.php'); $codesDir = "codes/"; $codeFile = date('d-m-Y-h-i-s').'.png'; $formData = $_POST['formData']; QRcode::png($formData, $codesDir.$codeFile, $_POST['ecc'], $_POST['size']); echo '<img class="img-thumbnail" src="'.$codesDir.$codeFile.'" />'; } else { header('location:./'); } ?>