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

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>
0
Arindam Chakraborty 9 Апр 2020 в 10:24

1 ответ

Это происходит, чувак, чтобы добавить ($ (вход). 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();
});

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

0
morphen 10 Апр 2020 в 09:58