请写出完整html+JavaScript代码实现以下功能: 写两个页面,应用include动作,从第一个页面向第二个页面传递整数参数m和n,在第二个页面中接收参数,并根据n的值打印nm的矩阵。
时间: 2023-04-07 13:01:27 浏览: 64
以下是实现该功能的完整HTML和JavaScript代码:
第一个页面(page1.html):
```html
<!DOCTYPE html>
<html>
<head>
<title>Page 1</title>
</head>
<body>
<h1>Page 1</h1>
<p>传递参数m和n到Page 2:</p>
<form action="page2.html" method="get">
<label for="m">m:</label>
<input type="number" id="m" name="m"><br><br>
<label for="n">n:</label>
<input type="number" id="n" name="n"><br><br>
<input type="submit" value="提交">
</form>
<!-- include动作 -->
<!--#include virtual="page2.html" -->
</body>
</html>
```
第二个页面(page2.html):
```html
<!DOCTYPE html>
<html>
<head>
<title>Page 2</title>
</head>
<body>
<h1>Page 2</h1>
<p>接收参数m和n:</p>
<script>
// 获取URL参数
function getParameterByName(name, url) {
if (!url) url = window.location.href;
name = name.replace(/[\[\]]/g, '\\$&');
var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, ' '));
}
// 获取m和n的值
var m = getParameterByName('m');
var n = getParameterByName('n');
// 打印nm的矩阵
if (n > 0) {
document.write('<table>');
for (var i = 1; i <= n; i++) {
document.write('<tr>');
for (var j = 1; j <= m; j++) {
document.write('<td>' + i*j + '</td>');
}
document.write('</tr>');
}
document.write('</table>');
} else {
document.write('n必须大于0');
}
</script>
<!-- include动作 -->
<!--#include virtual="page1.html" -->
</body>
</html>
```
注意:include动作只能在服务器端执行,因此这些代码需要在服务器上运行才能正常工作。