3 回答
TA貢獻1890條經驗 獲得超9個贊
如果要傳遞輸入值,則應考慮兩點:
getElementById 接受一個字符串,但是您正在嘗試傳遞一個不存在的變量
如果要傳遞值而不是元素,則應.value在該元素之后添加
最后,您應該具有以下input元素:
<input type='button' value='Submit' onclick='eq(document.getElementById("val2").value)'>
這是一個實時示例:
<script>
function eq(value) {
console.log(value);
ViewImg = window.open('http://localhost/coord.php?' + value, 'ViewImg', 'width=<?php print $realWidthNewWindow; ?>,height=<?php print $realHeightNewWindow; ?>', 'status=no', 'titlebar=0');
}
</script>
<form id='testform_eq' name='testform_new'>
<input type='text' id='val2' name='val2'>
<input type='button' value='Submit' onclick='eq(document.getElementById("val2").value)'>
</form>
另一種選擇是讓里面的函數值,如所描述這里。如果您不打算重復eq使用不同的值,則這種方法很好。您必須根據實際情況選擇其中之一。
TA貢獻1833條經驗 獲得超4個贊
function eq() {
const value = document.getElementById('val2').value;
ViewImg = window.open('http://localhost/coord.php?' + value, 'ViewImg', 'width=<?php print $realWidthNewWindow; ?>,height=<?php print $realHeightNewWindow; ?>', 'status=no', 'titlebar=0');
}
<form id='testform_eq' name='testform_new'>
<input type='text' id='val2' name='val2'>
<input type='button' value="Submit" onclick='eq()'>
</form>
您無需將任何內容傳遞給click函數。由于您已經具有輸入元素的id屬性,因此單擊時可以獲得輸入的值??赡苣朐谄渌胤绞褂迷摵瘮?,這意味著您每次必須傳遞該元素。
如果您確實想傳遞某些內容,則可以傳遞id本身。
eq('val2')
eq函數看起來比:
function eq(id){
const value = document.getElementById(id).value;
....
}
比起您可以在其他輸入的其他位置使用該功能。
TA貢獻1825條經驗 獲得超4個贊
因為您應該這樣做: document.getElementById("val2").value
document.getElementById(val2)如果要獲取id=val2值,則不正確。
要修復它,您可以替換eq(document.getElementById(val2)成eq(document.getElementById("val2").value)
function eq(value) {
ViewImg = window.open('http://localhost/coord.php?' + value, 'ViewImg', 'width=<?php print $realWidthNewWindow; ?>,height=<?php print $realHeightNewWindow; ?>', 'status=no', 'titlebar=0');
console.log(value);
}
<form id='testform_eq' name='testform_new'>
<input type='text' id='val2' name='val2'>
<input type='button' value='Submit' onclick='eq(document.getElementById("val2").value)'>
</form>
或者只是將id放在函數調用中: eq(val2)
function eq(id) {
ViewImg = window.open('http://localhost/coord.php?' + id.value, 'ViewImg', 'width=<?php print $realWidthNewWindow; ?>,height=<?php print $realHeightNewWindow; ?>', 'status=no', 'titlebar=0');
console.log(id.value);
}
<form id='testform_eq' name='testform_new'>
<input type='text' id='val2' name='val2'>
<input type='button' value='Submit' onclick='eq(val2)'>
</form>
添加回答
舉報
