【发布时间】:2013-11-07 15:40:27
【问题描述】:
我正在尝试使用 phonegap 和 JQuery Mobile 制作一个 Android 应用程序。
我有一个显示值的 div。每当我通过从标签值中添加或减去 div 的值来单击复选框时,该值就会更改
这是我在 Android 设备上安装的索引文件。
<head>
<script>
function inputData(idVar)
{
var myId;
myId = document.getElementById(idVar).getAttribute("value");
var myTag = document.getElementById(idVar);
var mymyTag = myTag.querySelectorAll(".ui-btn-text");
var myData = mymyTag[0].innerHTML;
var myDataParsed = parseInt(myData);
if (document.getElementById(myId).checked==false)
{
myDataPrased = myDataParsed+parseInt(document.getElementById("input_label").innerHTML);
document.getElementById("input_label").innerHTML=myDataPrased;
}
else
{
var myResult
var myOldData = parseInt(document.getElementById("input_label").innerHTML);
myResult = myOldData-myDataParsed;
document.getElementById("input_label").innerHTML=myResult;
}
}
</script>
</head>
<body>
<div data-role="page" id="input">
<div data-role="header"></div>
<div data-role="content">
<div data-role='fieldcontain' align="center">
<fieldset data-role='controlgroup' id="in">
</fieldset>
</div>
<div id="input_label">0</div>
<a href="#data" data-role="button" data-inline="true">Back</a>
</div>
<div data-role="footer" data-position="fixed">
<h4>Page Footer</h4>
</div>
复选框是从 php 页面生成的。并插入
<fieldset data-role='controlgroup' id="in">
当我点击标签时调用函数“inputData”(在 JQuery Mobile 中,标签标签似乎覆盖了 CheckBox,所以当我认为我点击复选框时,我实际上是点击标签然后它将生成一个触发 Checkbox 的事件)
该函数将接收标签的 ID。然后使用它,我通过从标签标签的“值”属性中提取它来获取 CheckBox 的 ID,这样我就可以使用它来检查 CheckBox 是否被选中。
此代码可以在 FireFox 等 Web 浏览器上完美运行。但是当我使用 Eclipse 在 Android 设备上安装它时它不会运行它。无论我如何单击复选框。 div 的值不会改变。
【问题讨论】:
-
“复选框是从 php 页面生成的”是什么意思?这是一个 .php 页面吗?
-
这是一个 Index.Html 文件。生成复选框的不是 php 文件。我使用 jquery $post 方法连接到服务器并在重新加载页面时加载这些复选框。我使用 Ajax 的原因是因为我需要与复选框一起加载数据。另外,我有不同的场景。所以复选框的数量会根据每个而有所不同
标签: javascript android jquery-mobile checkbox cordova