Javascript HTMLInputElement.onclick Typescript中未定义randomString
我想创建一个生成随机字符串或数字的函数 我在ts中的功能如下:Javascript HTMLInputElement.onclick Typescript中未定义randomString,javascript,angular,typescript,Javascript,Angular,Typescript,我想创建一个生成随机字符串或数字的函数 我在ts中的功能如下: randomString() { let chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz"; let string_length = 8; let randomstring = ''; for (let i = 0; i < string_length; i++) { let rnum
randomString() {
let chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
let string_length = 8;
let randomstring = '';
for (let i = 0; i < string_length; i++) {
let rnum = Math.floor(Math.random() * chars.length);
randomstring += chars.substring(rnum, rnum + 1);
}
}
在功能上
randomString() {
return Math
.random() // Create a random number
.toString(36) // Convert it to string (26 letters + 10 numbers)
.split('') // Creates an array of those letters
.slice(-8) // Take the last height ones
.join(''); // Join them back to create a string
}
Html代码
<form [formGroup]="addProductForm">
<div class="input-field col s12">
<input formControlName="Line_num" type="button" value="Create Random String" onClick="randomString();">
<input type="text" name="Line_num" value="">
</div>
<form>
<form [formGroup]="addProductForm">
<div class="input-field col s12">
<input type="text" formControlName="Line_num" name="Line_num">
</div>
</form>
问题已经解决了用一种更简单的方法创建随机字符串怎么样
randomString() {
return Math
.random() // Create a random number
.toString(36) // Convert it to string (26 letters + 10 numbers)
.split('') // Creates an array of those letters
.slice(-8) // Take the last height ones
.join(''); // Join them back to create a string
}
这更容易阅读,可以纠正您的问题
供您编辑:
this.addProductForm = this.fb.group({
'Line_num': new FormControl(this.randomString(), Validators.required)
});
在HTML中
<form [formGroup]="addProductForm">
<input type="text" formControlName="Line_num" name="Line_num">
</form>
用一种更简单的方法创建随机字符串怎么样
randomString() {
return Math
.random() // Create a random number
.toString(36) // Convert it to string (26 letters + 10 numbers)
.split('') // Creates an array of those letters
.slice(-8) // Take the last height ones
.join(''); // Join them back to create a string
}
这更容易阅读,可以纠正您的问题
供您编辑:
this.addProductForm = this.fb.group({
'Line_num': new FormControl(this.randomString(), Validators.required)
});
在HTML中
<form [formGroup]="addProductForm">
<input type="text" formControlName="Line_num" name="Line_num">
</form>
在中显示您的值
在Javascript中,您可以像这样向字段添加唯一ID
然后在randomString函数的末尾执行以下操作
document.getElementById(“myUniqueField”).value=randomstring编码>以在中显示您的值
在Javascript中,您可以像这样向字段添加唯一ID
然后在randomString函数的末尾执行以下操作
document.getElementById(“myUniqueField”).value=randomstring代码>定义函数时使用函数
关键字<代码>函数randomString(){..}
错误TS1068:意外标记。需要构造函数、方法、访问器或属性。Typescript代码请尽量避免将新问题编辑成新问题,因为它会很快使旧答案过时,并且并非每个人都愿意不断更新其帖子以跟上当前问题的进度。相反,请考虑发布一个新的问题。同样值得考虑的是,请编辑您的问题只使用两个角/盎格鲁JS标签中的一个,选择适合您的问题的标签。也就是说,首先假设angular与您的问题有关-目前我看不到明显的联系。在定义函数时使用function
关键字<代码>函数randomString(){..}
错误TS1068:意外标记。需要构造函数、方法、访问器或属性。Typescript代码请尽量避免将新问题编辑成新问题,因为它会很快使旧答案过时,并且并非每个人都愿意不断更新其帖子以跟上当前问题的进度。相反,请考虑发布一个新的问题。同样值得考虑的是,请编辑您的问题只使用两个角/盎格鲁JS标签中的一个,选择适合您的问题的标签。也就是说,首先假设angular与你的问题有关-目前我看不出有明显的联系。我不喜欢被忽视,但你看吧。对不起,我没有忽视你。这也是一个很好的方法。问题是它不能在htmlOf中显示,当然它可以。。。问题不在于如何创建随机数,而在于如何显示随机数。总之,我告诉过你如何通过编辑我的问题来给你的输入赋值。告诉我它是否适用于您。谢谢,该函数适用于我,但html中的显示不起作用。我编辑我的帖子没问题,一定要把你的问题标记为已解决!我不喜欢被忽视,但给你。对不起,我没有忽视你。这也是一个很好的方法。问题是它不能在htmlOf中显示,当然它可以。。。问题不在于如何创建随机数,而在于如何显示随机数。总之,我告诉过你如何通过编辑我的问题来给你的输入赋值。告诉我它是否适用于您。谢谢,该函数适用于我,但html中的显示不起作用。我编辑我的帖子没问题,一定要把你的问题标记为已解决!