我有一个表单,发出一个ajax请求,但是它找不到php file.Ive尝试过什么,在这里阅读了这么多帖子,尝试了所有建议,但是没有任何帮助。
档案结构:
myApp/app/js/contact.js
myApp/app/mail/contact.php
myApp/app/index.htmlhtml:
<section id="contact">
<form>
name:
<input id="name" type="text" name="name"> email:
<input id="email" type="text" name="email"> message:
<input id="message" type="text" name="message">
<button id="submit">send</button>
</form>
</section> app/js/contact.js:
$('#submit').click(function (event) {
event.preventDefault() ;
var name = $("#name").val();
var email = $("input#email").val();
var message = $("textarea#message").val();
console.log("name", name, email);
$.ajax({
url: "/app/mail/contact.php",
type: "POST",
data: {
name: name,
email: email,
message: message
}
})
});mail/contact.php:
<?php
if (isset($_POST["submit"])) {
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$from = 'Contact Form';
$to = 'myemail@yahoo.com';
$subject = 'Message from my page ';
if (mail ($to, $subject, $body, $from)) {
$result='<div class="alert alert-success">Thank You! I will be in touch</div>';
}
}?>
发布于 2017-10-29 23:09:07
在html文件中,将脚本放在</body>标记之前。
<section id="contact">
<form>
name:
<input id="name" type="text" name="name"> email:
<input id="email" type="text" name="email"> message:
<input id="message" type="text" name="message">
<button id="submit">send</button>
</form>
</section>
<script type="text/javascript" src="//code.jquery.com/jquery-3.2.1.min.js"></script>
<script type="text/javascript" src="/app/js/contact.js"></script>
</body>发布于 2017-10-29 23:18:18
这不能解决你的问题,但这是一个更好的ux
给<form>一个类或ID,并在表单提交时执行表单提交
所以这会是
$('.formClassName').submit(function(event){
});这将允许表单提交在submit按钮单击以及用户单击enter按钮时触发AJAX事件。
发布于 2017-10-30 01:46:53
而不是使用
url: "/app/mail/contact.php",
用途:
url: "mail/contact.php",
https://stackoverflow.com/questions/47005812
复制相似问题