使用jquery从textbox传递值到php不起作用请帮忙

时间:2011-05-19 23:43:49

标签: php javascript jquery ajax

<script type="text/javascript" src="http://code.jquery.com/jquery-1.5b1.js"></script> 
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.7/jquery-ui.min.js"></script>  

<input type="text" id="textbox">
<button id="inlinesubmit_button" type="button">submit</submit>


<script>

function call_this()
{
alert(<?php echo $_POST['text'];?>);
}


$('#inlinesubmit_button').click(function(){
    $.ajax({
        type: "POST",
        url: "sync_loading1.php",
       data: {text:$('#textbox').val()}
    });

call_this();
});

</script>

这会在警告框中给出undefined,请帮我指出我做错了什么

3 个答案:

答案 0 :(得分:2)

您可能需要将其换成引号('"),以使其成为字符串。

alert('<?php echo $_POST['text'];?>');

您似乎也忽视了JavaScript运行(客户端)和PHP(服务器端)的方式。他们无法直接沟通; PHP可以回显JavaScript,JavaScript可以向PHP文件发出HTTP请求。

答案 1 :(得分:2)

很难弄清楚你在做什么......但关键是你需要客户端代码和服务器处理程序。

您的HTML:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.5b1.js"></script> 
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.7/jquery-ui.min.js"></script>  
<script type="text/javascript">
function call_this(data, status, xhr)
{
   alert(data);
}
$(document).ready(function(){
   $('#inlinesubmit_button').click(function(){
      $.ajax({
         type: "POST",
          url: "sync_loading1.php",
         data: {text:$('#textbox').val()},
      success: call_this
      });
   });
 });
</script>

<input type="text" id="textbox">
<button id="inlinesubmit_button" type="button">submit</submit>

sync_loading1.php

<?php
// Perform action.  Maybe you want to log this into a DB.
//   Maybe you want to just print out some text:
echo nl2br('Hello world.  Here was my input:'.$_POST['text']);

答案 2 :(得分:1)

这个功能不会令人遗憾地工作,你正在运行一个外部文件的ajax调用,而外部文件不能发出警报,因为它没有被用户查看。如果您想提醒文本字段的数据,请执行alert($('#textbox').val());