Javascript 如何根据选择值动态更改“onChange”属性值?
如何根据用户在组合框中选择的值更改文本字段中my onChange=的值 我有这些组合框:Javascript 如何根据选择值动态更改“onChange”属性值?,javascript,html,Javascript,Html,如何根据用户在组合框中选择的值更改文本字段中my onChange=的值 我有这些组合框: <div> <label>Wafer Type:</label> <select name="s1""> <option value="1"> First </option> <option value="2"> Second </option> <
<div>
<label>Wafer Type:</label>
<select name="s1"">
<option value="1"> First </option>
<option value="2"> Second </option>
</select>
</div>
当用户首先选择时:
<input type="text" name="lotNo" onchange="function1();">
当用户选择“秒”时:
<input type="text" name="lotNo" onchange="function1(); function2()">
关于如何根据所选下拉列表值动态更改onChange值的任何建议
提前感谢。有很多方法可以做到这一点。 1在一个div中输入并给它id。现在在select控件的更改事件中创建java脚本。现在,在这个put条件下,如果选择了选项1,那么用desizeonchange事件替换输入
$( document ).ready(function() {
$("#s1").on('change', function(){
debugger;
if($("#s1 option:selected").val() == 1)
{
$("#changeinput").html("");
$("#changeinput").html('<input type="text" name="lotNo" onchange="function1();">')
}else
{
$("#changeinput").html("");
$("#changeinput").html('<input type="text" name="lotNo" onchange="function1();function2();">')
}
});
});
晶圆类型:
选择
第一
第二
您可以执行单个onchange函数,然后您可以根据使用条件语句选择的值执行该函数。明白了吗
function mainFunction() {
if (document.getElementsByName("s1").value == "1") {
function1();
}
else if (document.getElementsByName("s1").value == "2"){
function1();
function2();
}
}
假设您的输入是:
<input type="text" name="lotNo" onchange="myClickHandler();">
您可以按照以下方式基于选定值添加/删除事件:
var inputEl=document.querySelector'[name=lotNo]'
函数myFuncel{
var selVal=el.值;
ifselVal==1{
inputEl.removeEventListener'change',two;//删除上一个
addEventListener'change',one;//现在添加
}
else ifselVal==2{
inputEl.removeEventListener'change',one;//删除上一个
addEventListener'change',two;//现在添加
}
}
功能一{
console.log‘调用函数一’;
}
功能二{
log“调用函数二”;
}
//在页面加载上工作
//创建新的“更改”事件
var事件=新事件“变更”;
//在页面加载时发送它。
document.querySelector'select'。dispatchEventevent;
晶圆类型:
第一
第二
这里有一个onchange属性的替代品:一个成熟的事件监听器
它会自动访问触发它的事件作为其第一个参数,为了便于阅读,我们将此参数称为事件,此事件的target属性将引用任何更改的元素
每当更改lotNo输入时,侦听器都会调用function1,如果用户在s1下拉列表中选择了Second,则随后会调用function2
const s1=document.getElementsByNames1[0];
const lotNo=document.getElementsByNamelotNo[0];
document.addEventListenerchange,功能1;
功能1事件{
ifevent.target==lotNo{
调用console.logfunction1;
ifs1.value==2{function2;}
}
}
功能2{
调用console.logfunction2;
}
晶圆类型:
第一
第二
您可以执行单个onchange函数,然后您可以根据选择的值执行该函数。明白了吗?嗨@PradeepSambandam,我需要在组合框的第二个选项中使用2函数。我不想在第一个选项上运行function2,因为它;不需要。是的,如果值为2,您可以在条件状态下执行两个函数。Dynamic onChange函数非常不重要。你应该试试@PradeepSambandam建议的方法
function myClickHandler() {
if (document.querySelector("#myselect").value == "1") {
// first selected, call your function
}
else {
// second selected, call your function
}
}