2011-06-25 17 views
1

の間で交換する、たとえば言うことができます;は、私は2つの文字の間にある文字列を削除したい2つの文字

例:私はJavascriptでそれを行うことができますどのようにこの

"<input value= name=anything>" 

"<input value=98 name=anything>" 

? HTMLの構造はこのように常にある場合

おかげでたくさん、

+0

はい簡​​単な比較テストいくつかの値を入力した場合、HTMLの悪さを無視して、ただ値をalways = ""にしたい –

+0

特定のjavascriptライブラリを使用していますか? – Tarek

+0

Ummm ...これは文字列操作の質問かDOM操作ですか? –

答えて

3

あなたはおそらく、ここで正規表現を使用することができます。

value=foo,value="foo"またはvalue="foo bar"も考慮する必要がある場合は、さらに複雑になります。代わりに、

var tmp_ = document.createElement('div'); 
tmp_.innerHTML = htmlString; 
tmp_.children[0].setAttribute('value', ''); 

htmlString = tmp_.innerHTML; 

DEMO

+0

実際のHTMLではなく、操作している文字列であるので、正規表現をしてください。 –

+2

@JamesRattray: 'htmlString'はHTML文字列です。あなたはデモを見ていないのですか?アイデアはDOMをより簡単に操作するためにDOMに解析することです。 –

+0

申し訳ありませんが、私の悪いはちょうど標準的な返信だった、ありがとう! –

1

が、私はこのために正規表現を使用しないことをお勧めしたい、しかし:ここ

は、任意のHTML文字列の種類と valueに働くだろう、より刺激的な方法であり、いくつかの非常に単純なJavaScriptを:

var inputs = document.getElementsByTagName('input'); 
alert(inputs.length); 
for (i=0; i<inputs.length; i++){ 
    //inputs[i].setAttribute('value',''); or you can use the following line instead... 
    inputs[i].value = ''; 
} 
  1. JS Fiddle demo (using first line)
  2. JS Fiddle demo (using second line)
+0

正規表現は、実際のHTMLではなく、操作している文字列です。 –

+0

文字列はどこから来ていますか? /それはページのhtmlに変換されますか?文字列の作成を示すコードを投稿してください。 –

+0

これはいくつかのAjaxから得られたものですが、これを元の入力と比較するために、値をalways = ""に変更します。値は変更できますが、他の属性は変更できません(たとえば、 –

0

あなたはjavascriptのライブラリを使用している場合:

MooToolsのバージョン:

レットを使用すると、ID =テストとフィールドを持っていると言うには、次の操作を行うことができます

$('test').set('value',''); 

のjQueryバージョン:

$("#test").val(""); 
関連する問題