-2

我有这个 AJAX 请求:

function request(str){
    <script>      
    var aircraft = $("#div");
        aircraft.load("./file.php?icao="+str, function(){
        });
    }
<script>
<div id="div"><div>

当我执行此选项时。对file.php的请求

<script>
    $(function() {
        $("#submit")
            .button()
            .click(function form() {
        });
    });

    function form(){

        var id = document.getElementById('id').value;
                $("div2").text(id);
    }
</script>
<div id="div2"><div>
<tr><td class="forms">ID:</td><td><input maxlength="4" type="text" id="id" name="icao" size="30"/></td></tr>

<tr><td><input id="submit" type="submit" value="Submit"></td></tr>

当我按下按钮时,没有结果。var id 的值未定义。问题出在函数请求中。因为如果我直接不使用该功能,一切正常。我认为是 AJAX 和 Javascript 之后的问题。

4

3 回答 3

2

尝试这个:

function form() {
    var id = document.getElementById('id').value;
    $("div2").text(id);
}

$(function() {
    $("#submit").click(function() {
      form();
    });
});

在 jQuery 事件中嵌入函数调用的语法不正确。如果要在 jQuery 函数中执行另一个函数,则必须执行上述操作,而不是.click(function form() {});

于 2013-01-19T16:43:16.990 回答
0

我认为这段代码被破坏了:

<script>
    $(function() {
        $("#submit")
            .button()
            .click(function form() {
        });
    });

    function form(){

        var id = document.getElementById('id').value;
                $("div2").text(id);
    }
</script>

不确定这是否会完全解决它,但我认为这是正确的语法:

<script>
    $(function() {
        $("#submit")
            .button()
            .click(function() {
                 form();
        });
    });

    function form(){

        var id = document.getElementById('id').value;
                $("div2").text(id);
    }
</script>

我认为这不会解决您的问题,但是您使用的语法格式不正确。我认为不要像这样调用函数:

form();

您可能还对查看 .trigger() 或 .call() 感兴趣,我还查看了 jquery 文档,但从未见过 .button(),那是为了什么?

于 2013-01-19T16:53:44.843 回答
0

我可能错了,但<script>标签不应该在函数之前吗?

<script>    
function request(str){    
    var aircraft = $("#div");
        aircraft.load("./file.php?icao="+str, function(){
        });
}
<script>
于 2013-01-19T16:42:55.130 回答