0

2 つのボタンを作成します。最初のボタン: 複数選択フィールドからテキスト領域にエクスポートするため、2 番目のボタン: テキスト領域から重複行を削除するため

エクスポート ボタンは、重複の削除ボタンをまだクリックしていない場合にのみ機能し、重複の削除ボタンを既にクリックした場合は、エクスポート ボタンをもう一度クリックしても機能しません。

function eliminateDuplicates(arr) {
    var i,
    len=arr.length,
    out=[],
    obj={};

    for (i=0;i<len;i++) {
        obj[arr[i]]=0;
    }
    for (i in obj) {
        out.push(i);
    }
    return out;
}
$(document).ready(function(){
    $("#remove-duplicates-button").click(function(){
        $("#text-area").val(eliminateDuplicates($("#text-area").val().split("\n")).join("\n"));
    });
    $("#export-button").click(function(){
        var hotels = [];
        $('#hotels :selected').each(function(i, selected){
            hotels[i] = $(selected).val()+"\n";
        });
        $("#text-area").append(hotels);
    });
});

修正するのに助けが必要です。これはデモhttp://jsfiddle.net/4dtxf/3/です

ご協力いただきありがとうございます

4

2 に答える 2

0

構文エラーがいくつかあったようです。行方不明;やカンマが代わりにあるなどです。更新:値を設定するval代わりに使用します。appendtextarea

function eliminateDuplicates(arr) {
    var i=0;
    var len=arr.length;
    var out=[];
    var obj={};

    for (i=0;i<len;i++) {
        obj[arr[i]]=0;
    }
    for (i in obj) {
        out.push(i);
    }
    return out;
}

$(document).ready(function(){
    $("#remove-duplicates-button").click(function(){
        $("#text-area").val(eliminateDuplicates($("#text-area").val().split("\n")).join("\n"));
    });
    $("#export-button").click(function(){
        var hotels = [];
        $('#hotels :selected').each(function(i, selected){
            hotels[i] = $(selected).val()+"\n";
        });
        var h=hotels.toString().replace(/,/g,'');
        $("#text-area").val(h);
    });
});

http://jsfiddle.net/4dtxf/13/

于 2013-06-26T07:21:23.737 に答える