使用jquery插入的值是';t以表格形式提交


Values inserted with jquery aren't submitted in form

我有一个形式为的模态

<div class="modal-body">
    <form role="form" class="form-horizontal" action="../system/file_change.php" method="post" enctype="multipart/form-data">
        <div class="form-group">
            <div class="col-sm-10">
                <input type="file" name="fileToUpload" id="fileToUpload">
            </div>
            <div class="col-sm-2">
                <input type="submit" name="submit" class="btn btn-info pull-right replacefile" value="<?php echo $data['text_replace']?>">
            </div>
            <input type="hidden" name="order_id" value="<?php echo $order_id; ?>">
            <input name="old_code" type="hidden" id="old_code">
            <input type="hidden" name="token" value="<?php echo $token; ?>">
        </div>
    </form>
</div>

还有一个脚本,它通常会在输入name="old_code"字段中插入一个值:

<script>
$('.replacefile').on('click', function(){
    $('#old_code').val($(this).attr('data-id'));
    console.log( $('#old_code').attr('value')); 
});
</script>

控制台日志会返回正确的代码。我的问题是,为什么这个代码没有和表单一起提交?我该如何解决这个问题?

试试这个:

<script>
$('.replacefile').on('click', function(){
    $('#old_code').val($(this).val());
    console.log( $('#old_code').val()); 
});
</script>
<div class="modal-body">
<form role="form" id="myForm" class="form-horizontal" action="../system/file_change.php" method="post" enctype="multipart/form-data">
    <div class="form-group">
        <div class="col-sm-10">
            <input type="file" name="fileToUpload" id="fileToUpload">
        </div>
        <div class="col-sm-2">
            <input type="button" name="submit" class="btn btn-info pull-right replacefile" value="<?php echo $data['text_replace']?>">
        </div>
        <input type="hidden" name="order_id" value="<?php echo $order_id; ?>">
        <input name="old_code" type="hidden" id="old_code">
        <input type="hidden" name="token" value="<?php echo $token; ?>">
    </div>
</form>

<script>
    $('.replacefile').on('click', function(){
    $('#old_code').val($(this).attr('data-id'));
    console.log( $('#old_code').attr('value')); 
    document.getElementById("myForm").submit();
});
</script>

尝试以上代码