我正在尝试使用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。然后使用它,我通过从label标签的“value”属性中提取它来获取CheckBox的ID,因此我可以使用它来检查CheckBox是否被选中。
此代码在FireFox等Web浏览器上运行完美。但是当我使用Eclipse在Android设备上安装它时它不会运行它。无论我如何点击复选框。 div的值不会改变。
答案 0 :(得分:1)
我能够通过转身来解决我的问题。而不是检查复选框上的onclick事件并更改值。我创建了一个名为“calculate”的按钮,它迭代所有复选框并计算已检查的值。然后通过该按钮上的onclick事件编辑最终值。
非常感谢大家试图帮助我,我很感激。
答案 1 :(得分:0)
记得加载cordava文件:<script type="text/javascript" src="cordova.js"></script>
答案 2 :(得分:0)
查看你的config.xml文件。有没有像
这样的行<access origin="http://127.0.0.1*" />
和执行checkbox-trick的php脚本不在127.0.0.1? 然后将该行更改为
<access origin="*" />
访问php文件所在的远程主机。
LG
fastrde