Ошибка выплывает отсель
Вы тут на автомате переопределили переменную
$('#but2').click(function fun2(num1){
alert(num1);
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<!--[if IE]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
<title></title>
<meta name="keywords" content="" />
<meta name="description" content="" />
<link rel="stylesheet" href="style.css" type="text/css" media="screen, projection" />
<style>
p[id^="but"] {
border:red solid 1px;
cursor:pointer;
padding:2px 12px;
width:54px;
}
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('.knopka').click(function(){$('#tablo').append($(this).text()+', ');});
var num1;
$('#but1').click(function fun1(){
num1 = $('#tablo').text().toString();
alert(num1);
$('#tablo').empty();
})
$('#but2').click(function fun2(){
//fun1();
alert(num1)
})
});
</script>
</head>
<body><div id="wrapper">
<div id="content">
<div id="tablo">tablo =></div>
<p class="knopka">1</p>
<p class="knopka">2</p>
<p id="but1">zapomnil</p>
<p id="but2">pokazal</p>
</div><!-- #content-->
</div><!-- #wrapper -->
</body>
</html>