如何将数组文本框名称发送到 ajax


How to send array textbox name to ajax

美好的一天妈妈/先生我是一个新手程序员,想知道如何将数组文本框/保管箱名称传递给 ajax?

我知道我的代码不正确。请有人帮我。我知道你不喜欢我想展示的输出。

这是我的示例代码:

.HTML

<select name="departmentmontask1[]" id="departmentmontask11">
<option value="0">Select Department</option>
<option value="0">Select Department</option>
<option value="0">IT</option>
<option value="0">HRM</option>
<option value="0">WAREHOUSE</option>
</select>
<input class="submitbstyle" type="button" name="submitb" onclick="submitform()" value="SUBMIT">

.JS

function submitform()
{
var hospital1 = document.getElementsByName("departmentmontask1").value;
var fd = new FormData();
          fd.append("hospital", hospital1);
          var xhr = new XMLHttpRequest();
          xhr.open('POST', 'testjsarray.php', true);
          xhr.upload.onprogress = function(e) {
            if (e.lengthComputable) {
              var percentComplete = (e.loaded / e.total) * 100;
              console.log(percentComplete + '% uploaded');
            }
          };
          xhr.onload = function() {
            if (this.status == 200) {
                alert(this.response);
            };
          };
          xhr.send(fd)
}

.PHP

<?php
$departmentmon1 = $_POST['departmentmontask1'];
$depmonval1 = array();
foreach($hospitalmon1 as $key1 => $val1)
{
    $depmonval1[] = $val1;
    $depmoncount1 = $depmoncount1 + 1;
}
for($x=0;$x<$depmoncount1;$x++)
{
    echo $depmonval1[$x];
}
?>

我认为在 html 中您应该为选项分配不同的值在赋值后的 php 中,您永远不会使用 $departmentmon 1 变量。此外,第二个 for 可以切换到摆脱 $depmoncount 1 变量的 foreach

HTML 表单

<form class="form" id="f1" >
    <input name="f1_inp_1" value="1">
    <input name="f1_inp_2" value="2">
    <select name="f1_inp_3[]" multiple>
        <option value="f1_val1">f1_val1</option>
        <option value="f1_val2">f1_val2</option>
        <option value="f1_val3">f1_val3</option>
    </select>
</form>
<button id="fire2">Fire2</button>

Jquery

$("#fire2").click(function(){
    $.ajax({
        url: 'get_response.php',
        type: 'POST',
        data:$("#f1").serialize(),
        success: function(data){
            alert(data);
        }
    });
});

PHP脚本:

<?php
    echo "<pre>";
    print_r($_REQUEST);
    echo "</pre>";
    exit;
?>