0

我想做的就是标题所说的,当数据输入到文本字段时,我希望它发送到 posttothis.php,然后将结果打印在内容 div 中。我似乎无法让它工作。

测试脚本.html

<html>
<head>
<script type="text/javascript">
document.write("\<script src='http://code.jquery.com/jquery-latest.min.js' type='text/javascript'>\<\/script>");
</script>
</head>
<body>
<input type="text" name="text" id="text">
<div id="content" name="content">
<script>
$('#text').keyup(function(){
$.ajax({
    type: "POST",
    url: "posttothis.php",
    data: {text: $(this).val()},
    success: function(data)
            {
                $("#content").html(data);
            }
    });
});
</script>
</body>
</html>

posttothis.php

<?php
$testvar=$_POST['text'];
echo $testvar;
?>

谢谢

编辑:用建议的修改更新了我的脚本,但仍然无法让它显示我在内容 div 的文本框中输入的内容。回答以下问题:我不想提交表单,我只想在每次更改时从中获取价值。控制台显示没有错误。

EDIT2:我更新了工作代码,也许它在未来对其他人有帮助。

4

4 回答 4

2

您可以改用On Key up功能。

<input type="text" name="text" id="text">
<div id="content" name="content">
<script>
$('#text').keyup(function(){
$.ajax({
    type: "POST",
    url: "posttothis.php",
    data: {text: $(this).val()},
    success: function(data)
            {
                $("#content").html(data);
            }
    });
});
</script>
于 2013-09-24T08:00:03.337 回答
1

为什么不试试jQuery post呢?

例子

   <input type="text" name="text" id="text">
    <div id="content" name="content">
    <script>
    $('#text').keyup(function(){
        $.post('posttothis.php', {text:$('#text').val()}, function(data) {
            $("#content").html(data);
        });
    });
</script>
于 2013-09-24T07:58:29.617 回答
0

采用:

$('#text').keyup(function(){

代替

$('#text').change(function(){

此外,您在 data 属性后缺少逗号 (,)

data: {text: $('#text').val()},
于 2013-09-24T07:57:52.540 回答
0

在数据后面加上“,”:{text: $('#text').val()}

<input type="text" name="text" id="text">
<div id="content" name="content">
<script>
$('#text').change(function(){
    $.ajax({
        type: "POST",
        url: "posttothis.php",
        data: {text: $('#text').val()},
        success: function(data)
                {
                    $("#content").html(data);
                }
        });
});
</script>
于 2013-09-24T07:59:44.803 回答