3

これは私が持っている機能です

function set(sub) {
    var input = prompt("Insert your desired " + sub + " information, leave blank if you use an automated system to generate this information.");
    $('#' + sub).html(input).show();
    var textarea = $('textarea');
    textarea.html(textarea.html().replace(sub+"=",sub+"="+input));
}

通常、サブはs1、またはs2、またはs3です。ここで問題となるのは、入力が空白の場合に置換された値をリセットすることです。

s1をaに設定したいと入力したとすると、テキスト領域でs1=がs1= aに置き換えられます。入力が空の場合は、s1=aをs1=に戻します。

4

2 に答える 2

1

これはどう?正規表現 (Regex) を使用して置換を行います。

function set(sub) {
    var input = prompt("Insert your desired " + sub + " information, leave blank if you use an automated system to generate this information.");
    $('#' + sub).html(input).show();

    var pattern = new RegExp('(' + sub + '=[^&]*)', 'ig');    
    var $textarea = $('textarea');

    // Do Replacements
    var content = $textarea.html().replace(pattern, sub + '=' + input);
    $textarea.html(content);
}​
于 2012-11-07T12:02:04.700 に答える
0

htmlを次のようなものに置き換えることができます。

$(selector).html(function(i, orig) {
    return orig.replace("1234", "5678");
});
于 2012-11-07T11:08:19.997 に答える