jQuery从表单发送消息

时间:2012-11-21 21:25:10

标签: php jquery html

如何向其他php文件发送一些消息?我应该看到“加载”或我的输入结果。我试着找到一些答案,即使这个代码来自这个地方,但仍然无法正常工作。 我有:

<form>
something<input name="sthis" type="text" />
<input type="submit" value="submit" id="submit" />
</form>

<script type="text/javascript">

$(function(){
  $('submit').click(function(){
    $('#container').append('loading');
      var sthis = $('#sthis').val();
      $.ajax({
         url: 'form1.php' , 
         type: 'POST',
         data: 'sthis: ' + sthis,
         success: function(result){     
           $('#container').append('<p>' +     result + '</p>')      
         }
      });   
      return false;     
   });
});
});

</script>

Form1.php

<?php
$str = $_POST['sthis'];
echo $str;
}

?>

有什么想法吗?

3 个答案:

答案 0 :(得分:0)

<form id="form1">
<input name="sthis" type="text" />
<input type="button" value="submit" id="submit" />
</form>

<script type="text/javascript">

  $('#submit').click(function(){
    $('#container').append('loading');
      var data = $('#form1').serialize();
      $.ajax({
         url: 'form1.php' , 
         type: 'POST',
         data: data,
         success: function(result){     
           $('#container').append('<p>' +     result + '</p>')      
         }
      });   
      return false;     
   });

</script>

这会将您表单中的所有数据发送到php文件

答案 1 :(得分:0)

试试这个,我认为应该像

 data: {"sthis": sthis},

答案 2 :(得分:0)

因此,您需要在脚本中更改一些内容:

$(function(){
  $(':submit').click(function(event){
    event.stopPropagation();
    $('#container').append('loading');
      var sthis = $('#sthis').val();
      $.ajax({
         url: 'form1.php' , 
         type: 'POST',
        data: {'sthis': sthis},
         success: function(result){     
           $('#container').append('<p>' +     result + '</p>');      
         }
      });   
      return false;     
   });
});

首先是额外的});最后你可以删除。

您的输入字段必须包含名称为sthis的ID,而不仅仅是名称,因此您可以使用$(“#sthis”)访问它,如下所示:

<input name="sthis" type="text" id="sthis" />

3,更改数据行,使其如下所示:

data: {'sthis': sthis},

此外,要捕获按钮的事件,您必须使用$(':submit'),注意:

相关问题