У меня есть глобальная переменная:
var x = document.getElementById("Node").value;
Где значение определяется текстовым полем с идентификатором "Узла".
У меня есть две функции, которые не то же самое, если создавать предустановленные ноты на основе значений, введенных в текст и выпадающих. Как вызвать указанную выше глобальную переменную в эти функции и добавить ее в созданный оператор. Обе функции выглядят одинаково:
Это работает для одной функции, но не тогда, когда есть два. У меня есть несколько текстовых полей и падений. Одним из этих текстовых полей является глобальное значение, называемое Node. Когда узел заполняется, я хочу, чтобы это значение можно было вывести в обе функции. Вот что я имею для обоих.
//Declare Node as a Global Variable
var x = document.getElementById("Node").value;
//Populates the Summary box
function mySummary() {
var a = document.getElementById("Field1").value;
var b = document.getElementById("Field2").value;
var c = document.getElementById("Field3").value;
var d = document.getElementById("Field4").value;
document.getElementById("Summary").innerHTML = a + " - " + b + " - " + c + " - " + x + " -" + d;
}
//Populates the Notes box
function myNotes() {
var a = document.getElementById("Field5").value;
var b = document.getElementById("Field6").value;
var c = document.getElementById("Field7").value;
var d = document.getElementById("Field8").value;
var e = document.getElementById("Field9").value;
document.getElementById("Notes").innerHTML = x + " - " + a + " / " + b + " - " + c + "% Offline - " + d + " - " + e + " - " + f;
}
Проблема в том, что значение X не выводится одновременно в обе функции для вывода. Выход идет в текстовую область
Если я создаю локальную переменную в каждой функции и сделаю, чтобы пользователь вводил одну и ту же информацию дважды в текстовое поле, она работает нормально, но я хочу, чтобы они только вводили информацию один раз и вставляли ее в каждую текстовую область
Попробуй это
(function() {
var x = document.getElementById("Node").value;
document.getElementById("Node").onchange = function() {
myNode()
};
document.getElementById("mySelect1").onchange = function() {
myNotes()
};
document.getElementById("mySelect2").onclick = function() {
summary()
};
function myNode() {
x = document.getElementById("Node").value;
}
function summary() {
var a = document.getElementById("mySelect1").value;
var b = document.getElementById("mySelect2").value;
document.getElementById("5").value = a + " - " + b + " - " + x;
}
function myNotes() {
var a = document.getElementById("mySelect1").value;
var b = document.getElementById("mySelect2").value;
document.getElementById("4").value = a + " + " + b + " + " + x;
}
}
)();
Notes : <input type="text" id="4" /><br> Summary : <input type="text" id="5" /><br>
<select id="Node">
<option value="w">w
<option value="x">x
<option value="y">y
<option value="z">z
</select>
<select id="mySelect2">
<option value="a">a
<option value="b">b
<option value="c">c
<option value="d">d
</select>
<select id="mySelect1">
<option value="1">1
<option value="2">2
<option value="3">3
<option value="4">4
</select>
Вы можете просто использовать:
window.x = document.getElementById("Node").value;
global variable
= это было быx
- скорее всего,x
- это не то значение, о котором вы думаете, потому что оно устанавливается один раз, когда выполняется этот код, поэтому оно не изменяется динамически, когда меняется # Node.valuea + b + c + d + x
.