为什么有些ajax按钮不起作用?

时间:2015-05-31 13:15:36

标签: javascript jquery ajax

如你所见,我有5个按钮。他们工作得很好。

<button type="submit" id="submit_button1">Img1</button>
<button type="submit" id="submit_button2">Img2</button>
<button type="submit" id="submit_button3">Img3</button>
<button type="submit" id="submit_button4">Img4</button>
<button type="submit" id="submit_button5">Img5</button>

的script.js:

function button(name,url) {
$(name).click(function(){
   $.ajax({
      url:url+'.php',
      success: function(html){
      $("#show").after(html);
      }
   });
return false;
});
}

$(document).ready(function(){
    button(submit_button1,'action1');
    button(submit_button2,'action2');
    button(submit_button3,'action3');
    button(submit_button4,'action4');
    button(submit_button5,'action5');
});

使用相同的script.js,以下也适用:

<button type="submit" id="submit_button1">Img1</button>
<button type="submit" id="submit_button2">Img2</button>

但如果我使用它:

<button type="submit" id="submit_button1">Img1</button>
<button type="submit" id="submit_button3">Img3</button>

button1工作,button3没有。我不知道为什么。

或者这个:

<button type="submit" id="submit_button3">Img3</button>
<button type="submit" id="submit_button4">Img4</button>

button3和button4不起作用。

如果我在script.js中添加它们,我似乎必须使用所有按钮, 如果我跳过一个,那么一些按钮将无法工作。 如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

您有 2 问题:

1)

为什么要调用button(submit_button1,'action1');而不是button('submit_button1','action1');

2)你的功能应该把它当作ID:

function button(name,url) {
$('#'+name).click(function(){
   $.ajax({ ...

另外 - 另一种方式可以是:

button($('#submit_button1'),'action1');

所以功能将是:

function button(name,url) {
$(name).click(function(){ ... //$ is redundant but anyway...