首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当通过参数、PHP、JAVASCRIPT、Ajax传递其中一个变量时,AJAX函数无法工作

当通过参数、PHP、JAVASCRIPT、Ajax传递其中一个变量时,AJAX函数无法工作
EN

Stack Overflow用户
提问于 2015-06-16 20:24:51
回答 2查看 605关注 0票数 0

我试图编写一个函数,从select语句中获取值,并将该值回显到屏幕上。当我将确切的select名称放入ajax函数中时,它可以工作,但当我试图通过参数传递select名称时,它就停止工作了。我知道它成功地通过了参数,并且我知道它是正确的select名称,当我测试它时,它会向函数中的屏幕发出警报。所以我认为真正的问题就在这条线上:

代码语言:javascript
复制
data: { select: $('select[name=theName]').val()},

但我不知道这是怎么回事。下面我有两个版本的代码。第一个版本起作用,而第二个版本不起作用。第一个版本在参数中有确切的选择名称,第二个版本通过名为'theName‘的参数传递。请看一看:

ajax.php

代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>

<script type = "text/javascript"> 

function ajax(url,theName,id) {
alert(theName)
      $.ajax({
           type: "POST",
           url: url,
           data: { select: $('select[name="select1"]').val()},
           error: function(xhr,status,error){alert(error);},
           success:function(data) {
             document.getElementById( id ).innerHTML = data;
           }

      });

}

</script>

test1

代码语言:javascript
复制
<?php

echo "<select name = 'select1' onchange = 'ajax(\"test2.php\",\"select1\",\"output\")'>";

?>

^--这个版本起作用了。

ajax.php

代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>

<script type = "text/javascript"> 

function ajax(url,theName,id) {
alert(theName)
      $.ajax({
           type: "POST",
           url: url,
           data: { select: $('select[name=theName]').val()},
           error: function(xhr,status,error){alert(error);},
           success:function(data) {
             document.getElementById( id ).innerHTML = data;
           }

      });

}

</script>

test1

代码语言:javascript
复制
<?php

echo "<select name = 'select1' onchange = 'ajax(\"test2.php\",\"select1\",\"output\")'>";

?>

这个版本不起作用。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-06-16 20:32:09

您在这里省略了双引号和连接:

代码语言:javascript
复制
data: { select: $('select[name="'+theName+'"]').val()},
票数 1
EN

Stack Overflow用户

发布于 2015-06-16 20:33:19

代码语言:javascript
复制
data: { select: $('select[name=' + theName + ']').val()},
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30877481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档