1

3 種類の HTML があるとします。

<input name="myName" id="myID" role="textbox" style="width: 98%;" type="text" value="SDFSF"/>

また

<input name="myName" id="myID" role="textbox" style="width: 98%;" type="text" value='SDFSF'/>

また

<input name="myName" id="myID" role="textbox" style="width: 98%;" type="text"/>

どちらが来るかわかりません。私は次のようにそれらを編集しようとしています:

<input name="myName" id="myID" role="textbox" style="width: 98%;" type="text" value=''/>

私はこのことを使用しています:

html = html.replace(/value="(?:[^\\"]+|\\.)*"/,"value=''");

これは に置き換えることができvalue="Something"ますvalue=''。これを他の2つに拡張するにはどうすればよいですか? ORJavascriptにオプションはありますか?

編集

DOM 要素がありません。だから、私はそれをこのように使わなければなりません。

4

2 に答える 2

5

HTML を DOM 要素に解析し、それを操作します。次に、それを HTML に戻すか、それでやりたいことは何でもできます。

var container = document.createElement('div');
container.innerHTML = html;
container.firstChild.setAttribute('value', '');

html = container.innerHTML;

注:その他の使用について言及されていますelement.value = '';。これは、要素をシリアライズして HTML に戻したくない限り機能します。もしそうなら、それはまだ元のvalue値を持っています。

于 2013-06-18T09:31:25.830 に答える
1

単純に DOM を使用してください

document.getElementById("myId").value = "";

以前の値を参照して確認することもできます。

var el = document.getElementById("myId")
var myValue = el.value;

if (myValue === notSoGood) {
    el.value = "BetterValue";
}
于 2013-06-18T09:29:37.920 に答える