简体   繁体   English

使用javascript发布嵌套的值(提供php示例)

[英]posting nested values using javascript (php example provided)

I have some PHP code that posts data to an API, and compiles the POST information for curl as follows: 我有一些PHP代码,可将数据发布到API,并按如下所示编译curl的POST信息:

<?php
$post_data['field'] = 'fieldsValue';
$post_data['field2'] = 'field2sValue';
$post_data['parameters']['limit'] = '10';
$post_data['parameters']['offset'] = '10';
$post_data['parameters']['search'] = 'value';
?>

How would one achieve the same nested parameters to accommodate ['parameters']['limit'] and ['parameters']['offset'] values in a javascript post using XMLHttpRequest? 如何使用XMLHttpRequest在JavaScript帖子中实现相同的嵌套参数来容纳['parameters'] ['limit']和['parameters'] ['offset']值?

Code so far: 到目前为止的代码:

<script>
function fieldSearch(query){
    var xhttp = new XMLHttpRequest();
    var postdata = "field=fieldsvalue&field2=field2sValue";
    xhttp.open("POST", "app.php", true);
    xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xhttp.setRequestHeader("Content-length", postdata.length);
    xhttp.send(postdata);
}
</script>

try create this. 尝试创建这个。

<!DOCTYPE html>
<html>
<head>
    <title></title>
      <script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>  
      <script type="text/javascript">

          function formSubmit(frmElement){
            var xhr = new XMLHttpRequest();
            xhr.onload = function(){alert(xhr.responseText);}
            xhr.open(frmElement.method, frmElement.action,true);
            xhr.send(new FormData(frmElement));
            return false;
          }
      </script>

</head>
<body>

<form method="post" action="app.php" onsubmit="return formSubmit(this);">
    <input type="text" name="field"/>
    <input type="text" name="field2"/>
    <input type="text" name="parameters[limit]"/>
    <input type="text" name="parameters[offset]"/>
    <input type="text" name="parameters[search]"/>

    <input type="submit" value="submit">
</form>
</body>
</html>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM