我觉得这是一个简单的问题,但我对javascript和jquery仍然相对较新。
我正在开发一个触摸界面的网站,它使用无序列表和jquery .click函数来获取输入数据。我有一个部分输入m:ss时间,有3个div,每个div包含一个时间数字列表。我需要获取每列的输入并将其设置为变量。我最初设计输入来改变表单输入,因为我不太了解javascript。使用div id更改3个隐藏输入很容易,但我现在无法弄清楚如何使用javascript变量进行操作。
这是我原来的jquery代码......
$("div#time>div>ul>li").click(function() {
var id = $(this).parents(".time").attr("name");
var number = $(this).html();
$("input#"+id).val(number); });
最后一行设置3个隐藏输入中的一个等于所点击的内容。我需要让它如此单独的变量获取输入,然后我可以操纵那些我想要的变量。
这是html的简短片段,让我们了解jquery如何抓取它。
<div id="time">
<h1>Time</h1>
<div name="minute" class="time" id="t_minute">
M :
<ul>
全职html在这里:link text
谢谢大家!
我一直用SO来回答我曾经遇到过的很多问题,但是我找不到这个问题,所以我想我会加入,因为我相信我会有更多的问题。< / p>
所以我尝试添加以下内容,但仍然无法让它正常工作。
window.myValues[id] = number;
event[i].min = myValues["minute"];
event[i].sec = myValues["second"];
event[i].sin = myValues["single"];
event[i].time = String(event[i].min) + String(event[i].sec) + String(event[i].sin);
我在有和没有引号的情况下尝试了它。我没有使用窗口。*任何东西,所以我不太确定如何处理它。
答案 0 :(得分:2)
这里首先要提一下,不必多具体。在你的例子中
$('#time').find('li').click()
应该足够了。 如果我理解你,你想存储一些数据。你可能想用 jQuery的$.data方法。例如:
$('#time').find('li').click(function(){
var $this = $(this);
var name = $this.closest('.time').attr('name');
$.data(document.body, name, $this.html());
});
这会将点击的li的html存储在一个全局Object中,可以像
一样访问它alert($.data(document.body, 'minute'));
答案 1 :(得分:0)
你应该能够从window []对象引用变量,所以像window [id]这样的东西应该用来引用变量。