gpt4 book ai didi

JavaScript 不在 onsubmit 事件上运行

转载 作者:行者123 更新时间:2023-11-30 12:59:49 25 4
gpt4 key购买 nike

为了了解网络编程,我尝试了一个简单的 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事件被调用,它起作用了!

此外,我是否认为 JavaScript 就在 <body id="body"> 之下?应该运行?它也从不运行。

所以,对于那些没有阅读全部内容的人:为什么我的 JavaScript 函数在 onsubmit 时没有运行?事件被触发?

最佳答案

当我运行您的代码时出现以下解析错误:

Uncaught SyntaxError: Unexpected token return

Uncaught ReferenceError: mySubmit is not defined

您在 $.post 调用中缺少结束符 ),这会破坏解析器。一旦你解决了这个问题,你就会得到 $ is undefined 错误,直到你引用 jQuery。

http://jsfiddle.net/Z6hJK/

关于JavaScript 不在 onsubmit 事件上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17621179/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com