访问ajax / jquery返回的数据并将其放置到表单字段

时间:2011-04-08 23:19:56

标签: php javascript jquery ajax

用户在此表单上输入地址,然后单击验证地址,然后运行:

$('#verify').click(function () {

    var address = $('input[name=address]');
    var city    = $('input[name=city]');
    var state   = $('input[name=state]');
    var zip     = $('input[name=zip]');
    var country = $('select[name=country]');

    //organize the data for the call
    var data = 'address=' + address.val() + '&city=' + city.val() + '&state=' + state.val() + '&zip='  + zip.val() + '&country='  + country.val();

    //start the ajax
    $.ajax({
        url: "process.php",
        type: "GET",
        data: data,
        cache: false,
        success: function (html) {

            //alert (html);

            if (html!='error') {

                //show the pin long and lat form
                $('.form2').fadeIn('slow');

            } else alert('Error: Your location cannot be found');
        }
    });

    //cancel the submit button default behaviours
    return false;
});

process.php获取数据,并验证地址是否存在,然后将纬度和经度作为“经度,纬度”发回。如何获取该数据并将其放在表单中,如果找到该位置,则显示该表单字段(form2 div中的表单字段)。非常感谢。

2 个答案:

答案 0 :(得分:1)

替换它:

$('.form2').fadeIn('slow');

用这个:

$('.form2').fadeIn('slow').find('input[name=latlon]').val(html);

其中 latlon 是您要插入纬度和经度的输入字段的名称。

答案 1 :(得分:1)

嗯,我有点困惑,但是,如果我理解正确,你可以通过“,”分隔符拆分响应,并简单地将每一个放在相应的字段中。像这样:

if (html!='error') {
    var response = html.split(',');

    $('.form2').fadeIn('slow');
    $('.form2 input.longitude').attr( 'value', response[0] );
    $('.form2 input.latitude').attr( 'value', response[1] );
} else {
    alert('Error: Your location cannot be found');
}