Соберите все значения из уникальных идентификаторов и передайте их - PullRequest
0 голосов
/ 06 октября 2019

Так что у меня проблемы с JS и с тем, как правильно собирать и передавать все значения из текстового поля и скрытого поля по нажатию кнопки.

<input autocomplete="off" id="add_109_01000340002001010_id" name="add_109_01000340002001010[id]" type="hidden" value="113000674">

<input add_type_code="109" autocomplete="off" autocomplete_key="109" id="add_109_01000340002001010_name" name="add_109_01000340002001010[name]" onkeyup="fillFlatNumber(this)" size="3" style="height: 10px" type="text" class="ac_input">


<input autocomplete="off" id="add_109_01000340002001009_id" name="add_109_01000340002001009[id]" type="hidden" value="112000674">

<input add_type_code="109" autocomplete="off" autocomplete_key="109" id="add_109_01000340002001009_name" name="add_109_01000340002001009[name]" onkeyup="fillFlatNumber(this)" size="3" style="height: 10px" type="text" class="ac_input">


<input autocomplete="off" id="add_109_01000340002001021_id" name="add_109_01000340002001021[id]" type="hidden" value="11405181">

<input add_type_code="109" autocomplete="off" autocomplete_key="109" id="add_109_01000340002001021_name" name="add_109_01000340002001021[name]" onkeyup="fillFlatNumber(this)" size="3" style="height: 10px" type="text" class="ac_input">

Это текстовые поля и скрытые поля с уникальнымиидентификаторы. Они «связаны». При изменении значения в текстовом поле значение в скрытом поле изменяется автоматически.

Когда вы нажимаете кнопку, значения, которые будут записаны в текстовом поле, должны обрабатываться в js

function room_group() {
    $('.add').bind('click', function() {
        var hidden_values = 'something here' // Let's get all values here and pass them to the get request
        var values = 'something here' // Let's get all values here and pass them to the get request

        $.post('/link/definition', {
                val: values,
                hidden_val: hidden_values

            },
            function(response) {
                location.reload();
            }
        );
    });
}

Вопрос в том, как правильно собрать все эти значения? К сожалению, я понятия не имею ...

1 Ответ

1 голос
/ 06 октября 2019

Это зависит от того, как вы хотите отформатировать ваши значения. Вы можете сериализовать значения, выполнив их поиск с помощью соответствующего селектора, а затем вы можете создать строку JSON в качестве значения.

var hiddenValues = JSON.stringify($("input[type='hidden']").serializeArray());

var textValues = JSON.stringify($("input[type='text']").serializeArray());

console.log(hiddenValues);
console.log(textValues);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="hidden" value="h1" name="hidden1" />
<input type="hidden" value="h2" name="hidden2" />
<input type="text"   value="t1" name="text1" />
<input type="text"   value="t2" name="text2" />

Ваш POST будет выглядеть примерно так:

var hiddenValues = JSON.stringify($("input[type='hidden']").serializeArray());
var textValues = JSON.stringify($("input[type='text']").serializeArray());

$.post('/link/definition', {
    val: textValues,
    hidden_val: hiddenValues
    },
    function(response) {
        location.reload();
    }
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...