0

複数のフィールドを持つフォームがあります。最初のフィールドは subject と呼ばれます。私がやりたいことは、ユーザーがフィールドに入力する機能を無効にすることですが、それでも表示され、他の 3 つのフィールドに入力したテキストは、最初のフィールドの変数の間にスペースを入れて表示されます。例: このシナリオ: "Second_Field: John" "Third_Field: Doe" "Forth_Field: New part" 次に、最初のフィールドの件名に、次のように表示されます: John Doe New Part

助けてくれてありがとう。

4

3 に答える 3

0

HTML:

<form>
<p><input id="subject" name="subject" disabled size="60"></p>
<p><input id="Second_Field" class="part">
   <input id="Third_Field" class="part">
   <input id="Fourth_Field" class="part"></p>
</form>

</ p>

JavaScript:

var updateSubject = function() {
  var outArray = [];
  for (var i=0;i<parts.length;i++) {
      if (parts[i].value !== '' ) {
        outArray.push(parts[i].value);
      }
  }
  document.getElementById('subject').value = outArray.join(' ');
};
var parts = document.getElementsByClassName('part');
for (var i=0;i<parts.length;i++) {
  parts[i].onkeydown = updateSubject;
}

</ p>

于 2012-06-21T23:06:52.633 に答える
0

次のことを試すことができます。

<!-- HTML -->
<input type="text" id="subject" disabled="disabled">
<input type="text" id="field1">
<input type="text" id="field2">
<input type="text" id="field3">

// JavaScript
var fields = [];
for (var i = 1; i <= 3; i++) {
    fields.push(document.getElementById("field" + i).value);
}
document.getElementById("subject").value = fields.join(" ");
于 2012-06-21T22:43:25.047 に答える
0

これを試して:

<script>
function UpdateText()
{
  document.getElementById("subject").value =document.getElementById("Field1").value + " " +   document.getElementById("Field2").value + " " + document.getElementById("Field3").value;
}
</script>

<input type="text" id="subject" disabled="disabled"/>
<input type="text" id="Field1" onchange="UpdateText()";/>
<input type="text" id="Field2" onchange="UpdateText()";/>
<input type="text" id="Field3" onchange="UpdateText()";/>
于 2012-06-21T22:52:05.600 に答える