【问题标题】:How do you post an elements value through ajax with jquery?您如何使用 jquery 通过 ajax 发布元素值?
【发布时间】:2012-06-12 21:14:53
【问题描述】:

我可以将字符串发布到 PHP 文件,但是当我尝试在表单中选择一个输入字段以将其中的值发布到 PHP 文件时,它不起作用。我是否正确选择了输入字段中的值?

.js

$.post("js/data.php", {postid: form.postid.value},
            function(output){
                $("#gotpostid").html(output).show();
            }).fail(function(x,y,z){ 
                $("#gotpostid").html(x + "<br />" + y + "<br />" + z)
            });

index.php

<div class="post">
<form name="form"><input type="text" name="postid" value="1234" />
</div>

如果我只是简单地做{postid: "some text"} 它工作正常。

【问题讨论】:

  • 您从未关闭过表单,但我认为这不是问题。

标签: php jquery ajax post


【解决方案1】:

尝试以下方法:

<input type="text" name="postid" id="postid" value="1234" />

通过做来获取价值

value of postid is $("#postid").val() instead form.postid.value

【讨论】:

    【解决方案2】:

    使用

      $('input[name="postid"]').val();
    

    而不是

    form.postid.value
    

    【讨论】:

      【解决方案3】:

      试试$('[name="postid"]').val(),而不是form.postid.value

      【讨论】:

      • 这很有效,谢谢。我很想知道为什么 form.postid.value 不会。
      【解决方案4】:

      试试这些。

      $.post("js/data.php", {postid: document.getElementById("postid").value},
      

      $.post("js/data.php", {postid: $("input[name='postid']")[0].value},
      

      【讨论】:

        【解决方案5】:

        您可以尝试这样发送:

                $.post("js/data.php", $(this).serialize(),
                function(output){
                    $("#gotpostid").html(output).show();
                }).fail(function(x,y,z){ 
                    $("#gotpostid").html(x + "<br />" + y + "<br />" + z)
                });
        

        这样您就可以将表单中的所有值发送到 php,而不必再担心了

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2015-05-20
          • 2010-10-17
          • 1970-01-01
          • 2011-02-10
          • 1970-01-01
          • 2017-05-05
          • 1970-01-01
          相关资源
          最近更新 更多