gpt4 book ai didi

c# - 使用 JavaScript 获取选中的 RadioButtons

转载 作者:行者123 更新时间:2023-11-28 20:26:21 26 4
gpt4 key购买 nike

所以我正在尝试构建一个 win 8 应用程序,其中包含 WebView。 WebView 包含下面的 HTML 代码 (+JavaScript)。

<!DOCTYPE HTML PUBLIC " -//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8' >

<script type='text/javascript'>
function get_radio_value()
{
for (var i=0; i < document.myForm.frage1.length; i++)
{
if (document.orderform.frage1[i].checked)
{
var rad_val = document.myForm.frage1[i].value;
return rad_val;
}
}
}
</script>

<title>Kundenfragebogen</title>
</head>

<body>
<h1>Kundenfragebogen</h1>
<div id='myDiv'>Hello</div>
<form name='myForm' action=''>
<table border='2'>
<tr>
<td></td>
<td>sehr gut</td>
<td>gut</td>
<td>schlecht</td>
</tr>
<tr>
<td>Wie geht es Ihnen?</td>
<td><input type='radio' name="frage1" value='1'/>Mir ging es noch nie besser!</td>
<td><input type='radio' name="frage1" value='2'/>Es geht mir so wie immer.</td>
<td><input type='radio' name="frage1" value='3'/>Heute geht einfach gar nichts…</td>
</tr>
<tr>
<td>Können Sie Auto fahren?</td>
<td><input type='radio' name="frage2" value='1'/>Ja</td>
<td></td>
<td><input type='radio' name="frage2" value='3'/>Nein</td>
</tr>
<tr>
<td>Möchten Sie unseren Newsletter abonnieren?</td>
<td><input type='radio' name="frage3" value='1'/>Ja</td>
<td></td>
<td></td>
</tr>
</table>

<input type='button' value='Formular absenden' onclick="return get_radio_value()"/>
</form>
</body>
</html>

所以 html 包含一些单选按钮和一个按钮。我大约 2 年前使用过 JavaScript(只是一点点),所以我真的不知道如何编写确切的代码。我在互联网上找到了一些东西,但它没有达到我想要的效果。我想要以下内容:

用户可以检查单选按钮。当用户单击按钮时,JavaScript 函数应该返回所有选中的单选按钮(我只需要知道选中了哪个 RadioButton)。由于我知道 Windows 8 应用程序中 RadioButtons 的名称,因此我可以执行以下操作:

var object = WebView.InvokeScript("JavaScriptFunctionNAME", NameOfRadiobutton);

因此,WebView 调用脚本,并且应该返回已检查的 RadioButton 的 VALUE。

“JavaScriptFunctionNAME” = Javascript 中函数的名称

NameOfRadiobutton = 作为参数的 RadioButton 名称(例如“frage1”)。

目前,我正在返回单选按钮的值,该值是在 RadioGroup“frage1”中检查的。如何通过参数检查每个RadioButton?我的意思是我有一个参数“frage1”并返回选中的RadioButton的值。之后,我使用参数“frage2”再次调用该函数并返回选中的 RadioButtons 值。谁能帮我解决 JavaScript 函数问题吗?

最佳答案

单选按钮按名称属性分组。您可以使用 document.getElementsByName 获取单选按钮的集合,并查看每个单选按钮的选中状态,例如:-

function FindChecked() {
var elements = document.getElementsByName("frage1")
for (var i = 0; i < elements.length; i++) {
if (elements[i].checked) {
return elements[i].value;
}
}
}

将返回其组内选中的单选按钮的值。

jsfiddle example

编辑:要将组名称从 C# 代码传递到此函数,您可以执行以下操作:-

public class YourClass
{
public string GroupName { get { return "frage1"; } }
}

然后 JavaScript 函数将变成:

function FindChecked() {
var elements = document.getElementsByName('<%= this.GroupName %>')
for (var i = 0; i < elements.length; i++) {
if (elements[i].checked) {
return elements[i].value;
}
}
}

关于c# - 使用 JavaScript 获取选中的 RadioButtons,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17316311/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com