0

由于 Instamapper 正在关闭,而我正在做这个项目,我试图去月球计算我走了多少公里,我试图制作我的网络应用程序,我可以使用它来代替。除了我想每 5 秒自动提交一次带有数据的表单外,我一切正常。我尝试使用 .submit() 但它不起作用。

编辑: submit() 函数不起作用,这是来自控制台的错误:

未捕获的类型错误:对象# 的属性“提交”不是函数

这是代码:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"     type="text/javascript"></script>
    <script type="text/javascript">
    $(document).ready(function(){
    setTimeout(function(){
        $('form#target').submit();
    }, 5000);
    });
    </script>
<?php
if(isset($_POST['submit'])) {
    echo 'works';
}
$device = 'vPhone';
$date = new DateTime();
$timest = $date->getTimestamp();
?>
</head>

<body>
<form action="" method="post" id="target">
<input type="text" value="<?=$timest?>" name="timestamp" />
<input type="text" value="<?=$device?>" name="device" />
<input type="submit" name="submit" id="submit" />
</form>
<script>
var x=document.getElementById("target");
  if (navigator.geolocation)
    {
    navigator.geolocation.getCurrentPosition(showPosition);
    } else {x.innerHTML="Geolocation is not supported by this browser.";}
  function showPosition(position)
    {
      x.innerHTML += "<input type='text' name='lat' value='" + position.coords.latitude + 
  "' disable><br> <input type='text' name='lat' value='" + position.coords.longitude + "'     disable> "; }
</script>
</body>
</html>
4

2 回答 2

2

正是name="submit" id="submit"这导致了这里的问题。把它改成别的东西——我用过的任何东西name="notsubmit" id="notsubmit"——你的表格就会自动提交。

来源:http ://api.jquery.com/submit/#comment-106178333

显然,这些属性以某种方式覆盖了 jQuery 提交函数,使其不再可访问。

于 2012-12-06T19:12:12.573 回答
0

尝试向您的表单添加操作

于 2012-12-06T19:05:56.097 回答