JQuery Dynami c Создание формы удаляет существующее поле ввода - PullRequest
0 голосов
/ 09 апреля 2020

У меня есть поле поиска ввода. Теперь при создании динамической c формы в jquery это поле поиска удаляется из родительского элемента div и добавляется в новую форму. Более того, динамический ввод типа «скрытый» c, который предполагается создать, не создается. Пожалуйста, найдите ниже мой код. Пожалуйста, помогите решить эту проблему. Заранее спасибо.

HTML

<body>
    <div class="searchArea">
        <input id="searchField" name="searchNotice" type="text">
        <button id="searchButton" class="iconButton" data-tooltip-text="Search"><i class="fy fy-magnify"></i></button>
    </div>
    <div class="downloadArea">
        <button id="downloadIDPDF" ntag="6">Download ID Card</button>
    </div>
</body>

JQuery

$('#downloadIDPDF').click(function()
{
    $empID  = $(this).attr('ntag');
    var url = './lib/emp_id_pdf.lib.php';       

    $("<form>")
    .attr("action", url)
    .attr("method", "post")
    .append($("input").attr("type", "hidden").attr("name", "emp_id").attr("value", $empID))
    .appendTo("body")
    .submit()
    .get(0)
    .reset()
    .remove();
});

Финал HTML

<body>
    <div class="searchArea">            
        <button id="searchButton" class="iconButton" data-tooltip-text="Search"><i class="fy fy-magnify"></i></button>
    </div>
    <div class="downloadArea">
        <button id="downloadIDPDF" ntag="6">Download ID Card</button>
    </div>
    <form action="./lib/emp_id_pdf.lib.php" method="post">
        <input id="searchField" name="searchNotice" type="hidden" value="2">
    </form>
</body>

1 Ответ

0 голосов
/ 10 апреля 2020

это происходит, чувак, чтобы добавить ($ (input) .attr ("type", "hidden"). Attr ("name", "emp_id"). Attr ("value", $ empID)) - как это работает как селектор и выбирая все входные данные в dom и добавляя его в форму, вы можете сделать что-то вроде этого.

$('#downloadIDPDF').click(function()
{
    $empID  = $(this).attr('ntag');
    var url = './lib/emp_id_pdf.lib.php';       
    var input = '<input>'
    $("<form>")
    .attr("action", url)
    .attr("method", "post")
    .append($(input).attr("type", "hidden").attr("name", "emp_id").attr("value", $empID))
    .appendTo("body")
  .submit()
    .get(0)
    .reset()
    .remove();
});

надеюсь, это поможет:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...