如何使用 AJAX 动态填充CakePHP中的输入文本字段?

yzxexxkh  于 2022-11-11  发布在  PHP
关注(0)|答案(2)|浏览(117)

我有一个“添加人员”的形式与一些字段(姓名,地址,电话号码等)。
我希望能够在提交表单之前使用其他字段的信息预先填充一些字段。例如,一旦用户输入了一个城市, AJAX 查询将提取电话号码的区号(Controller有一个“城市到区号”数据库),并将其放在电话号码字段中,希望这样可以保存一些输入。
我尝试过使用observeField,但它似乎只能更改元素的innerHTML,而不能更改输入字段的值。
你有什么建议吗?

2w3kk1z5

2w3kk1z51#

假设您有两种表单:

<form id="formOriginal">
    <input type="text" name="name"/>
    <input type="text" name="address"/>
    <input type="text" name="city"/>
    <input type="text" name="state"/>
</form>

<form id="formCopy">
    <input type="text" name="name"/>
    <input type="text" name="address"/>
    <input type="text" name="city"/>
    <input type="text" name="state"/>
</form>

您应该能够循环遍历这些项并复制值,如下所示:

$('#formOriginal input').each(function(e) {
    var name = e.attr('name');
    var $copy = $('#formCopy input[@name=' + name + ']');

    if ($copy) {
        $copy.val($(e).val());
    }
});
4szc88ey

4szc88ey2#

如果要更改文本输入上的值,则可以使用.val()
所以在你的 AJAX success中你会有一个回调:

success: function(data){
  $('#foo').val(data);
}

相关问题