Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将按钮的值更改为Javascript函数_Javascript_Jquery_Ajax_Function - Fatal编程技术网

将按钮的值更改为Javascript函数

将按钮的值更改为Javascript函数,javascript,jquery,ajax,function,Javascript,Jquery,Ajax,Function,我的页面上有此代码,可通过两个按钮更改我的的内容 先前的 下一个 只有当我将按钮的值设置为“上一个”和“下一个”时,它才起作用,并且我希望添加函数名来执行与按钮相同的操作,从而将按钮的名称更改为“前一个”和“后一个” ---我想得到的基本上是两个函数,一个与前一个相同,另一个用于下一个--- 这是密码 <input type="button" value="Previous" /> <input type="button" value="Next" /> <br

我的页面上有此代码,可通过两个按钮更改我的
的内容

  • 先前的
  • 下一个
只有当我将按钮的值设置为“上一个”和“下一个”时,它才起作用,并且我希望添加函数名来执行与按钮相同的操作,从而将按钮的名称更改为“前一个”和“后一个”

---我想得到的基本上是两个函数,一个与前一个相同,另一个用于下一个---

这是密码

<input type="button" value="Previous" />
<input type="button" value="Next" />
<br />
<iframe id="frame" src="1.html">
</iframe>

<script>
    var locations = ["1.html", "2.html", "3.html","4.html"];
    var currentIndex = 0;
    var len = locations.length;

    $(document).ready(function(){
        $(':button').click(function() {
             currentIndex = this.value == "Next" ? 
             currentIndex < len - 1 ? ++currentIndex : 0 : 
             currentIndex > 0 ? --currentIndex : len - 1;
             $('#frame').attr('src', locations[currentIndex]);
        });
    });
</script>


var locations=[“1.html”、“2.html”、“3.html”、“4.html”]; var currentIndex=0; var len=位置。长度; $(文档).ready(函数(){ $(':按钮')。单击(函数(){ currentIndex=this.value==“下一步”? currentIndex0?--currentIndex:len-1; $('#frame').attr('src',locations[currentIndex]); }); });
Oriol的答案为您提供了两个功能。我会这样说:

var locations=[“1.html”、“2.html”、“3.html”、“4.html”]


$(文档).ready(函数(){
var locations=[“1.html”、“2.html”、“3.html”、“4.html”];
var currentIndex=0;
var len=位置。长度;
函数prev(){
如果(currentIndex==0){
currentIndex=len-1;
}否则{
当前索引--;
}
$('#frame').attr('src',locations[currentIndex]);
}
函数next(){
如果(currentIndex==len-1){
currentIndex=0;
}否则{
currentIndex++;
}
$('#frame').attr('src',locations[currentIndex]);
}
$('prev')。单击(prev);
$(“#下一步”)。单击(下一步);
});


如果我理解得很好,你想要类似

var locations = ["1.html", "2.html", "3.html","4.html"],
    len = locations.length;
var currentIndex = (function(){
    var index = 0;
    return function(idx) {
        if(idx === void(0)) return index;
        index = idx;
        $('#frame').attr('src', locations[index]);
    }
})();
/* To read currentIndex use `currentIndex()`
   To set currentIndex use `currentIndex(value)` */
function prev() {
    currentIndex(currentIndex() < len - 1 ? currentIndex()+1 : 0);
}
function next() {
    currentIndex(currentIndex() > 0 ? currentIndex()-1 : len - 1);
}
$(document).ready(function(){
    $('#prev')
        .val('Previous')
        .click(prev);
    $('#next')
        .val('Next')
        .click(next);
});

<input type="button" id="prev" />&nbsp;<input type="button" id="next" />
<br />
<iframe id="frame" src="1.html">
</iframe>
var locations=[“1.html”、“2.html”、“3.html”、“4.html”],
len=位置。长度;
var currentIndex=(函数(){
var指数=0;
返回函数(idx){
如果(idx==void(0))返回索引;
指数=idx;
$('#frame').attr('src',locations[index]);
}
})();
/*要读取currentIndex,请使用'currentIndex()`
要设置currentIndex,请使用'currentIndex(值)`*/
函数prev(){
currentIndex(currentIndex()0?currentIndex()-1:len-1);
}
$(文档).ready(函数(){
$(“#上一页”)
.val('Previous')
。单击(上一页);
$(“#下一个”)
.val('下一个')
。单击(下一步);
});


是的,我以前试过这个,但是你有没有发现一种方法可以让这个函数变成两个函数——一个用于下一个函数,另一个用于上一个函数,因为使用函数可以让我的设计更加灵活——感谢实现两个函数的更新,就像Oriol的回答一样,你能把它写在代码上吗?因为某种原因,它不起作用,我不知道我是否放错了地方,但我不这么认为。我真的很感激,非常感谢。我刚看了,但是有人要看,然后你也能看到。我对它进行了测试,它可以正常工作,但Asker明确表示“我想添加函数名,以实现与按钮相同的功能”。但是你的函数是匿名的,所以它们没有任何名称可以调用。它们修改了我的问题,所以现在比较混乱,但我基本上想要的是两个函数:一个是使下一个按钮相同,另一个是使上一个按钮相同,因为现在只有当我将按钮的值设置为“上一个”或“下一个”时,我才能使按钮工作。哦,等等。。。你错过了比赛
var locations = ["1.html", "2.html", "3.html","4.html"],
    len = locations.length;
var currentIndex = (function(){
    var index = 0;
    return function(idx) {
        if(idx === void(0)) return index;
        index = idx;
        $('#frame').attr('src', locations[index]);
    }
})();
/* To read currentIndex use `currentIndex()`
   To set currentIndex use `currentIndex(value)` */
function prev() {
    currentIndex(currentIndex() < len - 1 ? currentIndex()+1 : 0);
}
function next() {
    currentIndex(currentIndex() > 0 ? currentIndex()-1 : len - 1);
}
$(document).ready(function(){
    $('#prev')
        .val('Previous')
        .click(prev);
    $('#next')
        .val('Next')
        .click(next);
});

<input type="button" id="prev" />&nbsp;<input type="button" id="next" />
<br />
<iframe id="frame" src="1.html">
</iframe>