开发者

Cycle Through form Inputs and match with Json array

I run an ajax request and return a json array. There is more in the json array than there is fields on the page. I want to cycle through text fields and find their NAME and match that to the json array and fill in the value.

The names of the fields and the names in the j开发者_运维知识库son array are the same.

<script type="text/javascript">
function loadIntake(){
var client = <?php echo $id ?>;

$.post("loadIntake.php", 
    {id: client},
    function(jdata){
        $.each(jdata, function(i, data) {
            $('#' + i).val(data);
        });
            $('input[type=text]').attr("name", function(n, idata){
                //$(idata).val(jdata.idata);
                //alert (idata);
            })
    },
    "json"
);  

}
</script>

However, some of the fields are text fields, some are textfields, some are radio buttons, and checkboxes. As I said the json array has MORE fields than there are fields on the page. So I dont want to deal with unnecessary code runs.


There are some plugins you might consider using for this. Populating a form with a json object is more complex than you think because fields are not only of type 'input' but could also be 'textarea', 'checkbox', 'radio' or a 'select'.

I've found the following form filler plugins but they're rather old:

http://www.keyframesandcode.com/resources/javascript/jQuery/demos/populate-demo.html

http://plugins.jquery.com/project/Wonderfill


How about this:

$.each(jdata, function(i, data) {
    var nameOfField = data.name;
    $('[name='+nameOfField+']').val();
});

I am honestly not sure if that will work, but it won't hurt to try!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜