2016-04-12 35 views
1

問題:関数からの戻り値を入力フィールドに渡そうとしています。関数から入力フィールドに値を渡す

エラーは発生しません。フィールドは空白です。

質問:コードが機能しないのはなぜですか?事前に

HTML

<tr> 
<td>Quantity to be dredged</td> 
<td><input type="number" class="" id="shorePipe"></input></td> 
</tr> 

はJavaScript

var shorePipe = function() { 
    var val = 100; 
    var val2 = 100; 
    var total = val * val2/100; 
    // return total; 
    document.getElementById('shorePipe').value = total; 
}; 

ありがとう!あなたが関数に

shorePipe(); 

を呼び出す必要があり

+0

* *は有効なHTML属性ではありません。 –

+1

エラーが生じますか?また、[質問]ページを読んで質問を改善するのを助けてください。 – ochi

+0

私はあなたがそれを知っていると思いますが、あなたはreadyonlyでタイプミスがあります。また、あなたは必要ありません – Alfonso

答えて

2

あなたのコードが(</input>そばに)完全に正常に動作しますので、私はここを参照してください唯一の問題は、おそらくじゃないということです一旦のDOMが読み込まれ、準備が整ったら、shorePipe();と呼ぶ

jsBin demo

だから、右の終値</body>タグ</input>が無効であることを

<script> 
var shorePipe = function() { 
    var val = 100; 
    var val2 = 100; 
    var total = val * val2/100; 
    // return total; 
    document.getElementById('shorePipe').value = total; 
}; 
shorePipe(); 
</script> 

</body> 

予告も前に、あなたのJSを置きます。 <input>void elementsのグループに属し、終了タグは使用しないでください。

+0

Plunkr:https://embed.plnkr.co/upBqdXfWKNaCg3zIwxDp/ –

+0

私はjsBinが嫌いですので、ここにjsFiddleがあります:https://jsfiddle.net/2vxdyvgz/ –

+0

これは冗談です。彼らは皆同じ​​です、ユーモアのセンスはどこですか? –

0
  1. 入力を閉じる必要はありません。
  2. JS関数を実際にどこかで呼び出すことを確認してください。私はあなたのためにこれJSFiddleを作成し

https://jsfiddle.net/pd12edbp/2/

<input type="number" class="" id="shorePipe" readyonly> 

JS:あなたのオリジナルのポストで

var shorePipe = function() { 
    var val = 100; 
    var val2 = 100; 
    var total = val * val2/100; 
    // return total; 
    document.getElementById('shorePipe').value = total; 
}; 

$(document).ready(function(){ 
    shorePipe(); 
}); 
0

を、あなたはID shorePipeを持つ要素に値を渡し、そしてあなたのました入力はIDがavgSubPipe

でなければなりません。 と、あなたはHTMLに

<tr> 
<td>Quantity to be dredged</td> 
<td><input type="number" class="" id="avgSubPipe" readonly ></td> 
</tr> 

とJavascriptを機能を起動する必要があります。readyonly

var shorePipe = function() { 
    var val = 100; 
    var val2 = 100; 
    var total = val * val2/100; 
    // return total; 
    document.getElementById('shorePipe').value = total; 
}; 

// calling function 
shorePipe(); 

https://jsfiddle.net/yhz7syhs/1/

関連する問題