簡體   English   中英

如何遍歷對象數組

[英]How to iterate over array of objects

我正在從JQuery ajax方法調用PHP函數。 以下是來自ajax調用的響應外觀:

在此處輸入圖片說明

我的問題是:如何遍歷jquery中的此數組以獲取值?

如果使用$ .each進行迭代,則會收到“無法使用'in'運算符在數組中搜索'length'的信息。

下面是代碼:

$("#member_country").change(function() {
        var country = $(this).val();
        //alert(country);
        var ajax_url_mtypes = ins_membership_ajax.ajax_url;                    
        //alert(ajax_url_mtypes);
        jQuery.ajax({
        url:ajax_url_mtypes, 
        data:{country:country, 
        action: "ins_get_membershiptypes_from_country"},
        method:'GET',
        contentType: "application/json;charset=utf-8",
        success:function(response) {
          //var resp = $.trim(response);
          alert(response);
          $.each(response, function( key, value ) {
              alert( key );
              alert( value );
            });              
      }
      });

PHP代碼:

 public static function getMembershipTypesNonAdmin($country){
        $rtn = array();
        global $wpdb;
        $table = $wpdb->prefix.self::TABLE_NAME;
        $query = "SELECT * FROM {$table} where admin_only = 'false' order by member_type";
        $results = $wpdb->get_results($query);
        if($results){
            foreach($results as $row){
                $membership_type = INS_Membership_Types::loadById($row->id);
                $membership_type->setDues(INS_Membership_Types::getDuesByEconomy($country, $membership_type->getMemberType()));
                $rtn[] = $membership_type;
            }
        }
        return $rtn;
    }

    private $dues;

    public function getDues()
    {
        return $this->dues;
    }

    public function setDues($dues)
    {
        return $this->dues = $dues;
    }

您可以在for循環中遍歷對象。 如下圖所示:

for(var prop in object){
console.log(object[prop]);
}

希望這可以幫助。

嘗試使用json。 采用

json_encode()

在PHP代碼和

dataType:“ json”

在ajax電話

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM