getElementsByClassName 打字稿
getElementsByClassName typescript
我正在使用 VueJS3 - Typescript。
我有 1 个组件“Form”在我的视图“FormPage”中调用了 2 次。我想获取我的 2 个组件的信息。我尝试使用 document.getElementsByClassName(“key”) 方法获取信息,但控制台只显示一个 HTMLCollection [](长度:0)。而不是 2 个元素的数组。
如何获取 document.getElementsByClassName(“key”) 元素的值?
我的组件:
<form id="form">
<h2>{{ plateform }}</h2>
<p>
<label for="key">Key:</label>
<input type="text" name="key" v-model="key">
</p>
<p>
<label for="secret">Secret Key:</label>
<input type="text" name="secret" v-model="secret">
</p>
<p v-if="plateform === 'Coinbase Pro'">
<label for="passphrase">Passphrase:</label>
<input type="text" name="passphrase" v-model="passphrase">
</p>
</form>
import { Options, Vue } from 'vue-class-component'
@Options({
props: {
plateform: String
}
})
export default class Form extends Vue {
plateform!: string
data() {
return {
key : 'key',
secret : 'secret',
passphrase : 'passphrase'
}
}
}
我的看法:
<div class="form">
<Form plateform="Coinbase" />
<Form plateform="Coinbase Pro"/>
<button @click="send_request()">Send</button>
</div>
@Options({
components: {
Form
}
})
export default class FormPage extends Vue {
send_request() {
console.log('clicked');
var list = document.getElementsByClassName("key")
console.log(list);
//var list: any = document.getElementsByClassName("key");
//console.log(list);
//for (let item of Array.from(list)) {
// console.log('item');
//}
}
}
这是 name
而不是 class
:
<input type="text" name="key" v-model="key">
向其添加 class 或按名称 select 元素:
<input type="text" name="key" class="key" v-model="key">
document.querySelectorAll('[name="key"]')
我正在使用 VueJS3 - Typescript。
我有 1 个组件“Form”在我的视图“FormPage”中调用了 2 次。我想获取我的 2 个组件的信息。我尝试使用 document.getElementsByClassName(“key”) 方法获取信息,但控制台只显示一个 HTMLCollection [](长度:0)。而不是 2 个元素的数组。
如何获取 document.getElementsByClassName(“key”) 元素的值?
我的组件:
<form id="form">
<h2>{{ plateform }}</h2>
<p>
<label for="key">Key:</label>
<input type="text" name="key" v-model="key">
</p>
<p>
<label for="secret">Secret Key:</label>
<input type="text" name="secret" v-model="secret">
</p>
<p v-if="plateform === 'Coinbase Pro'">
<label for="passphrase">Passphrase:</label>
<input type="text" name="passphrase" v-model="passphrase">
</p>
</form>
import { Options, Vue } from 'vue-class-component'
@Options({
props: {
plateform: String
}
})
export default class Form extends Vue {
plateform!: string
data() {
return {
key : 'key',
secret : 'secret',
passphrase : 'passphrase'
}
}
}
我的看法:
<div class="form">
<Form plateform="Coinbase" />
<Form plateform="Coinbase Pro"/>
<button @click="send_request()">Send</button>
</div>
@Options({
components: {
Form
}
})
export default class FormPage extends Vue {
send_request() {
console.log('clicked');
var list = document.getElementsByClassName("key")
console.log(list);
//var list: any = document.getElementsByClassName("key");
//console.log(list);
//for (let item of Array.from(list)) {
// console.log('item');
//}
}
}
这是 name
而不是 class
:
<input type="text" name="key" v-model="key">
向其添加 class 或按名称 select 元素:
<input type="text" name="key" class="key" v-model="key">
document.querySelectorAll('[name="key"]')