2012-02-18 7 views
0

私はサーバーからいくつかの日付を取得するために、配列に返される文字列データを操作するために醜いハックを使用しています。コードは機能しますが、これを行うためのよりクリーンな方法がありますか?サーバ側配列を作成するためのAjaxと文字列操作

<?php 

json_encode($yourdata); 

?> 

とクライアント側で

function findUsers(date){ 
$.ajax({ 
    type: "POST", 
    url: "user_dates", 
    cache: false, 
    data: {matched_date:date}, 
    success: function(html){ 
    user_arry = []; 
    $("#hidden_div").append(html); 
    a = $("#hidden_div").html(); 

    b = a.substring(2, 6); 
    c = a.substring(10, 14); 
    d = a.substring(18, 22); 

    user_arry.push(b,c,d); 
    for (var j in user_arry) { 
    (hidden_array = '\.'+ user_arry[j]); 
    $(hidden_array).hide(); 
} 
+1

コードは意味を成さないこと - あなたは」各ループで 'hidden_​​array'の値を完全に上書きします。リクエストの結果は何ですか?リクエストには何をしたいですか? –

+0

hidden_​​arrayはuser_arryに '。'各要素に付けられています。リクエストの結果は["0700"、 "0800"、 "1800"]ですが、これは文字列で配列に変換されます。 – EHNole

答えて

0

​​
0

本当にuser_arrayが必要ですか? b、c、dをhidden_​​arrayに直接割り当てるのはなぜですか? 変数の名前をよりよく指定できます。また、部分文字列の代わりに正規表現を使用することもできます。しかし、注意してください。コードを読めないようにしないでください。最後に、独自のメソッドにコードを抽出することができます。 しかし、jQueryを使ってJSONを使用すると、クライアント側の「dataTypeとのプロパティを忘れないでください:)

sven.malvik.de

0

最善のようになります。

[...] 
cache: false, 
data: _yourData, 
dataType: 'json', 
[...]