要了解网络编程,我正在尝试一个简单的 html/javascript/php“产品搜索”页面。这是index.php
文件:
<html>
<head>
<title>Product Search</title>
<script type="text/javascript">
function mySubmit() {
alert("submitting...");
var product_type = $('product_type').value;
$.post('product_search.php', { product_type: product_type }, function (data) {
alert("result = " + data);
$('body').html(data);
}
return false;
}
</script>
</head>
<body id="body">
<script type="text/javascript">
mySubmit();
</script>
<form class="form" id="myform" method="post" onsubmit="javascript:return mySubmit();">
Product Type:
<input id="product_type" type="text" name="product_type"/>
<br/><br/>
<input id="submit" type="submit" value="Submit"/>
</form>
</body>
</html>
并且product_search.php
文件非常小:
<?php
$product_type = $_POST["product_type"];
echo "<h1>$product_type</h1>";
?>
问题是似乎onsubmit
从未为表单调用该事件。我认为这是一个 JavaScript 问题(例如,不允许运行),但是如果我在调用事件时运行alert
而不是调用,它就可以工作!mySubmit()
onsubmit
另外,我认为<body id="body">
应该运行下面的 JavaScript 是不是错了?它也永远不会运行。
那么,对于那些没有阅读所有内容的人:为什么我的 JavaScript 函数在事件触发时没有运行?onsubmit