Javascript 访问表单提交上的选择元素值

Javascript 访问表单提交上的选择元素值,javascript,jquery,html,forms,Javascript,Jquery,Html,Forms,重构select元素的编写方式,并尝试找出如何访问表单提交上select下拉列表的值 目前,代码如下所示: <select onchange="myFunc(this.value)">Some Options</select> <form onsubmit="myFunc("Send the value of the select element")"> <select>Some Options</select>

重构select元素的编写方式,并尝试找出如何访问表单提交上select下拉列表的值

目前,代码如下所示:

  <select onchange="myFunc(this.value)">Some Options</select>
<form onsubmit="myFunc("Send the value of the select element")">
    <select>Some Options</select>
    <input type="submit"/>
</form>
一些选项
要执行以下操作:

  <select onchange="myFunc(this.value)">Some Options</select>
<form onsubmit="myFunc("Send the value of the select element")">
    <select>Some Options</select>
    <input type="submit"/>
</form>

一些选择

如果“this”有一个新上下文,那么获取select元素值的最佳方法是什么?

假设您在表单中只有一个select,并且它引用了表单上下文。请尝试以下操作:

 $(this).find('select').val();

假设您在表单中只有一个select,并且它引用了表单上下文。请尝试以下操作:

 $(this).find('select').val();

假设您在表单中只有一个select,并且它引用了表单上下文。请尝试以下操作:

 $(this).find('select').val();

假设您在表单中只有一个select,并且它引用了表单上下文。请尝试以下操作:

 $(this).find('select').val();

您更喜欢纯JS的解决方案,还是可以使用JQuery

<html>
<head>
    <script type="text/javascript" src="jquery-1.8.1.js"></script>
</head>
<body>
    <script type="text/javascript">
        $(document).ready(function() {
            $('#myselect').change(function() {
                console.log($(this).val());             
            });
        });
    </script>
    <form id="myform">
        <select id="myselect">
            <option value="val1">opt1</option>
            <option value="val2">opt2</option>
        </select>
        <input type="submit"/>
    </form>
</body>
</html>

$(文档).ready(函数(){
$('#myselect').change(function(){
log($(this.val());
});
});
opt1
opt2
以下是纯Javascript的替代方案:

<html>
<head>
    <script type="text/javascript" src="jquery-1.8.1.js"></script>
</head>
<body onload="domisready()">
    <script type="text/javascript">
        var domisready = function() {
            document.getElementById('myselect').onchange = function() {
                console.log(this.options[this.selectedIndex].value);
            };
        };
    </script>
    <form id="myform">
        <select id="myselect">
            <option value="val1">opt1</option>
            <option value="val2">opt2</option>
        </select>
        <input type="submit"/>
    </form>
</body>
</html>

var domisrady=函数(){
document.getElementById('myselect')。onchange=function(){
console.log(this.options[this.selectedIndex].value);
};
};
opt1
opt2

您更喜欢纯JS的解决方案,还是可以使用JQuery

<html>
<head>
    <script type="text/javascript" src="jquery-1.8.1.js"></script>
</head>
<body>
    <script type="text/javascript">
        $(document).ready(function() {
            $('#myselect').change(function() {
                console.log($(this).val());             
            });
        });
    </script>
    <form id="myform">
        <select id="myselect">
            <option value="val1">opt1</option>
            <option value="val2">opt2</option>
        </select>
        <input type="submit"/>
    </form>
</body>
</html>

$(文档).ready(函数(){
$('#myselect').change(function(){
log($(this.val());
});
});
opt1
opt2
以下是纯Javascript的替代方案:

<html>
<head>
    <script type="text/javascript" src="jquery-1.8.1.js"></script>
</head>
<body onload="domisready()">
    <script type="text/javascript">
        var domisready = function() {
            document.getElementById('myselect').onchange = function() {
                console.log(this.options[this.selectedIndex].value);
            };
        };
    </script>
    <form id="myform">
        <select id="myselect">
            <option value="val1">opt1</option>
            <option value="val2">opt2</option>
        </select>
        <input type="submit"/>
    </form>
</body>
</html>

var domisrady=函数(){
document.getElementById('myselect')。onchange=function(){
console.log(this.options[this.selectedIndex].value);
};
};
opt1
opt2

您更喜欢纯JS的解决方案,还是可以使用JQuery

<html>
<head>
    <script type="text/javascript" src="jquery-1.8.1.js"></script>
</head>
<body>
    <script type="text/javascript">
        $(document).ready(function() {
            $('#myselect').change(function() {
                console.log($(this).val());             
            });
        });
    </script>
    <form id="myform">
        <select id="myselect">
            <option value="val1">opt1</option>
            <option value="val2">opt2</option>
        </select>
        <input type="submit"/>
    </form>
</body>
</html>

$(文档).ready(函数(){
$('#myselect').change(function(){
log($(this.val());
});
});
opt1
opt2
以下是纯Javascript的替代方案:

<html>
<head>
    <script type="text/javascript" src="jquery-1.8.1.js"></script>
</head>
<body onload="domisready()">
    <script type="text/javascript">
        var domisready = function() {
            document.getElementById('myselect').onchange = function() {
                console.log(this.options[this.selectedIndex].value);
            };
        };
    </script>
    <form id="myform">
        <select id="myselect">
            <option value="val1">opt1</option>
            <option value="val2">opt2</option>
        </select>
        <input type="submit"/>
    </form>
</body>
</html>

var domisrady=函数(){
document.getElementById('myselect')。onchange=function(){
console.log(this.options[this.selectedIndex].value);
};
};
opt1
opt2

您更喜欢纯JS的解决方案,还是可以使用JQuery

<html>
<head>
    <script type="text/javascript" src="jquery-1.8.1.js"></script>
</head>
<body>
    <script type="text/javascript">
        $(document).ready(function() {
            $('#myselect').change(function() {
                console.log($(this).val());             
            });
        });
    </script>
    <form id="myform">
        <select id="myselect">
            <option value="val1">opt1</option>
            <option value="val2">opt2</option>
        </select>
        <input type="submit"/>
    </form>
</body>
</html>

$(文档).ready(函数(){
$('#myselect').change(function(){
log($(this.val());
});
});
opt1
opt2
以下是纯Javascript的替代方案:

<html>
<head>
    <script type="text/javascript" src="jquery-1.8.1.js"></script>
</head>
<body onload="domisready()">
    <script type="text/javascript">
        var domisready = function() {
            document.getElementById('myselect').onchange = function() {
                console.log(this.options[this.selectedIndex].value);
            };
        };
    </script>
    <form id="myform">
        <select id="myselect">
            <option value="val1">opt1</option>
            <option value="val2">opt2</option>
        </select>
        <input type="submit"/>
    </form>
</body>
</html>

var domisrady=函数(){
document.getElementById('myselect')。onchange=function(){
console.log(this.options[this.selectedIndex].value);
};
};
opt1
opt2

如果“这”有一个新的背景,你可以尝试
”——如果“这”有一个新的背景,你可以尝试
——如果“这”有一个新的背景,你可以尝试
,如果“这”有一个新的背景--您可以进一步阐述您的问题吗?您可以尝试
”,因为“这”有一个新的上下文--您可以进一步阐述您的问题吗?我可以使用jQuery,但我希望避免在更改事件上触发回调函数。我使用上面的
使它“工作起来”。不管怎样,您都提供了一个很好的代码示例,谢谢!我可以使用jQuery,但我希望避免在更改事件上触发回调函数。我使用上面的
使它“工作起来”。不管怎样,您都提供了一个很好的代码示例,谢谢!我可以使用jQuery,但我希望避免在更改事件上触发回调函数。我使用上面的
使它“工作起来”。不管怎样,您都提供了一个很好的代码示例,谢谢!我可以使用jQuery,但我希望避免在更改事件上触发回调函数。我使用上面的
使它“工作起来”。不管怎样,您都提供了一个很好的代码示例,谢谢!