Javascript 使用AJAX发送隐藏的ID输入字段

Javascript 使用AJAX发送隐藏的ID输入字段,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,使用这个AJAX脚本,我试图发送contentText和contentID的内容 只发送contentTEXT是可行的,但我也想发送ID,这样我就可以对原始帖子发表评论了 但它不起作用 myData半工作时看起来是这样的: > var myData = '?content_txt='+$("#contentText").val(), > '&content_id='+$("#contentId").val(); //build a post data structure 但

使用这个AJAX脚本,我试图发送contentText和contentID的内容

只发送contentTEXT是可行的,但我也想发送ID,这样我就可以对原始帖子发表评论了

但它不起作用

myData半工作时看起来是这样的:

> var myData = '?content_txt='+$("#contentText").val(),
> '&content_id='+$("#contentId").val(); //build a post data structure
但我想应该是这样的

<script type="text/javascript"> $(document).ready(function() {

    //##### send add record Ajax request to response.php #########  $("#FormSubmit").click(function (e) {           e.preventDefault();             if($("#contentText").val()==='')            {
                alert("Please enter some text!");
                return false;           }
                        $("#FormSubmit").hide(); //hide submit button           $("#LoadingImage").show(); //show loading image

            var myData = '?content_txt='+$("#contentText").val(), '&content_id='+$("#contentId").val(); //build a post data structure
            jQuery.ajax({           type: "POST", // HTTP method POST or GET            url: "response.php", //Where to make Ajax calls             contentType: "application/x-www-form-urlencoded;charset=UTF-8",             dataType:"text", // Data type, HTML, json etc.          data:myData, //Form variables           success:function(response){
                $("#responds").append(response);
                $("#contentText").val(''); //empty text field on successful
                $("#FormSubmit").show(); //show submit button
                $("#LoadingImage").hide(); //hide loading image

            },          error:function (xhr, ajaxOptions, thrownError){
                $("#FormSubmit").show(); //show submit button
                $("#LoadingImage").hide(); //hide loading image
                alert(thrownError);             }           });     });

    //##### Send delete Ajax request to response.php #########  $("body").on("click", "#responds .del_button", function(e) {         e.preventDefault();         var clickedID = this.id.split('-'); //Split ID string (Split works as PHP explode)          var DbNumberID = clickedID[1]; //and get number from array          var myData = 'recordToDelete='+ DbNumberID; //build a post data structure
                $('#item_'+DbNumberID).addClass( "sel" ); //change background of this element by adding class       $(this).hide(); //hide currently clicked delete button
                    jQuery.ajax({           type: "POST", // HTTP method POST or GET            url: "response.php", //Where to make Ajax calls             dataType:"text", // Data type, HTML, json etc.          data:myData, //Form variables           success:function(response){
                //on success, hide  element user wants to delete.
                $('#item_'+DbNumberID).fadeOut();           },          error:function (xhr, ajaxOptions, thrownError){
                //On error, we alert user
                alert(thrownError);             }           });     });

}); </script>
$(文档).ready(函数(){
//#####向response.php发送addrecordajax请求。单击(函数(e){e.preventDefault();if($(“#contentText”).val()=“”){
警报(“请输入一些文本!”);
返回false;}
$(“#FormSubmit”).hide();//隐藏提交按钮$(“#加载图像”).show();//显示加载图像
var myData='?content_txt='+$(“#contentText”).val(),'&content_id='+$(“#contentId”).val();//构建一个post数据结构
jQuery.ajax({type:“POST”,//HTTP方法POST或GET url:“response.php”,//进行ajax调用的位置contentType:“application/x-www-form-urlencoded;charset=UTF-8”,数据类型:“text”,//数据类型、HTML、json等。数据:myData,//表单变量成功:函数(响应){
$(“#响应”)。追加(响应);
$(“#contentText”).val(“”);//成功时为空文本字段
$(“#FormSubmit”).show();//显示提交按钮
$(“#加载图像”).hide();//隐藏加载图像
},错误:函数(xhr、ajaxOptions、thrownError){
$(“#FormSubmit”).show();//显示提交按钮
$(“#加载图像”).hide();//隐藏加载图像
警报(thrownError);}}}});
//#####将删除Ajax请求发送到response.php##########$(“body”)。在(“click”、“#responses.del#按钮”上,函数(e){e.preventDefault();var clickedd=this.id.split('-')//split id字符串(split作为php爆炸)var DbNumberID=clickedd[1];//并从数组var myData='recordToDelete='+DbNumberID;//获取数字;构建一个post数据结构
$('#item.'+DbNumberID).addClass(“sel”);//通过添加类$(this).hide();//隐藏当前单击的删除按钮来更改此元素的背景
jQuery.ajax({type:“POST”,//HTTP方法POST或GET url:“response.php”,//在何处进行ajax调用dataType:“text”,//数据类型、HTML、json等。数据:myData,//表单变量成功:函数(响应){
//成功后,隐藏用户要删除的元素。
$('#item_'+dbnumberrid).fadeOut();},错误:函数(xhr,ajaxOptions,thrownError){
//出现错误时,我们会提醒用户
警报(thrownError);}}}});
}); 
我想用我的表格

<form class="form-horizontal" accept-charset="utf-8">
<fieldset>
<legend><?php echo WORDING_ADD_A_COMMENT; ?></legend>
<!-- Textarea -->
<div class="control-group">
  <div class="controls">                     
    <textarea name="content_txt" id="contentText" cols="45" rows="5" placeholder="<?php echo WORDING_COMMENT_PLACEHOLDER; ?>"></textarea>
    <input type="hidden" name="content_id" id="contentId" value="<?php echo $_GET['topic_id']; ?>"/>
  </div>
</div>
<!-- Button -->
<div class="control-group">
  <label class="control-label" for="singlebutton"></label>
  <div class="controls">
    <button id="FormSubmit" class="btn btn-primary"><?php echo WORDING_BUTTON_COMMENT_BOX; ?></button>
    <img src="images/loading.gif" id="LoadingImage" style="display:none" />
  </div>
</div>
</fieldset>
</form>

尝试使用

       var myData = '?content_txt='+$("#contentText").val()+'&content_id='+$("#contentId").val();

手动构建查询字符串时,仅使用
&
,在这种情况下,还需要对值进行编码

当您将数据作为参数发送时,最简单的解决方案是生成一个对象。将由jQuery自动编码的:

//build a post data structure
var myData = { 'content_txt': $("#contentText").val(),
               'content_id': $("#contentId").val() }; 
在使用表单时,还可以序列化表单:

var myData = $('.form-horizontal').serialize();

数据:'content#id='+$(“#contentId”).val()+'&content#txt='+$(“#contentText”).val(),

虽然这可能会回答这个问题,但最好在答案中加入一些文本来解释你在做什么。请阅读。@Jurgemaiser我将在将来处理这个问题。感谢您将此纳入我的考虑。:)
var variable = {
 'content_txt': $("#contentText").val(),
 'content_id': $("#contentId").val() 
};