jquery
2016-11-10 2 views 0 likes 
0

jquery変数オブジェクトの入力値を変更または設定する方法を教えてください。例えば :jquery変数の入力値を設定する

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
<script> 
htmlString = '<div><input name="hello" value="AAAAAAAA" /> </div>'; 
$htmlString = $(htmlString); 
$htmlString.find('[name="hello"]').val('world') 
console.log($htmlString.find('[name="hello"]').val()); 
console.log($htmlString.prop('outerHTML')); 
</script> 

[NAME =「こんにちは」]の値は、最初にconsole.logの「世界」であることを示しているが、第二に、それはまだ「AAAAAAAA」であることを示しています。 私はそれを「世界」のままにしておく必要があります。

答えて

1

jQueryの.attr()を使用して新しい属性値を設定します。.setAttribute()は純粋なjsで呼び出され、両方ともDOM構造を変更します。

なぜ最初のコンソールにも「ワールド」が表示されるのはなぜですか?

あなたは

inputID.value = "world"; 
//value changed but if you try to view HTML source you see no changes 
inputID.setAttribute("value","world"); 
//here your source code changed 
jQueryの

でも

inputID.val("world"); 
//value changed but if you try to view source HTML you see no changes 
inputID.attr("value","world"); 
//here your source code changed 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
<script> 
 
htmlString = '<div><input name="hello" value="AAAAAAAA" /> </div>'; 
 
$htmlString = $(htmlString); 
 
$htmlString.find('[name="hello"]').attr("value",'world'); 
 
console.log($htmlString.find('[name="hello"]').val()); 
 
console.log($htmlString.prop('outerHTML')); 
 
</script>

+0

のように入力の値を設定した場合、そのコードは仕事をしている間、他は右、同様に動作する必要がありますか?私はそれが明らかに設定されていることを意味する、そうでなければ最初のコンソールログは '世界'を表示しません。 – Robbie

+0

他に何がありますか? '.attr()'が属性値を更新したため、最初のコンソールは 'world'を表示します。 –

+0

申し訳ありませんが、私は自分のOGコードを意味しました。 OGの最初のコンソールは世界を表示します。 – Robbie

関連する問題