diff --git a/apps/blockchain-explorer/main.py b/apps/blockchain-explorer/main.py index b992313e..2d383efa 100644 --- a/apps/blockchain-explorer/main.py +++ b/apps/blockchain-explorer/main.py @@ -299,13 +299,67 @@ HTML_TEMPLATE = """ if (!query) return; // Try block height first - if (/^\\d+$/.test(query)) { + if (/^\d+$/.test(query)) { showBlockDetails(parseInt(query)); return; } - // TODO: Add transaction hash search - alert('Search by block height is currently supported'); + // Try transaction hash search (hex string, 64 chars) + if (/^[a-fA-F0-9]{64}$/.test(query)) { + try { + const tx = await fetch(`/api/transactions/${query}`).then(r => { + if (!r.ok) throw new Error('Transaction not found'); + return r.json(); + }); + // Show transaction details - reuse block modal + const modal = document.getElementById('block-modal'); + const details = document.getElementById('block-details'); + details.innerHTML = ` +