Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.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 Yii2 Ajax提交不起作用_Javascript_Jquery_Ajax_Yii2 - Fatal编程技术网

Javascript Yii2 Ajax提交不起作用

Javascript Yii2 Ajax提交不起作用,javascript,jquery,ajax,yii2,Javascript,Jquery,Ajax,Yii2,我是Yii2和Ajax的新手 我想为一个工作添加多个作业,为此我将id传递给WorkJobs Controller 这是我提交ajax的代码 <?php $this->registerJs( '$("body").on("beforeSubmit", "form#w1", function() { var form = $(this); if (form.find(".has-error").length) { return false; }

我是Yii2和Ajax的新手

我想为一个工作添加多个作业,为此我将id传递给WorkJobs Controller

这是我提交ajax的代码

<?php

$this->registerJs(
'$("body").on("beforeSubmit", "form#w1", function() {

    var form = $(this);
    if (form.find(".has-error").length) {
      return false;
    }

    $.ajax({
      var jobid =  "<?php echo $id;?>";

      url: form.attr("work-jobs/create&id="+jobid),
      type: "post",
      data: form.serialize(),
      success: function(errors) {
        alert("sdfsdf");
        // How to update form with error messages?
      }
    });

    return false;
    });'
);
 ?>


但它不起作用,我不知道我的代码有什么问题,请帮助……。

尝试在
url
中使用
createAbsoluteUrl()
,如下所示:

url: "<?php echo Yii::app()->createAbsoluteUrl(\"work-jobs/create&id=\")"+jobid

url:尝试在
url
中使用
createAbsoluteUrl()
,如下所示:

url: "<?php echo Yii::app()->createAbsoluteUrl(\"work-jobs/create&id=\")"+jobid

url:如下更改代码

<?php
$url=Yii::$app->urlManager->createUrl(['work-jobs/create','id'=>$id]);
$this->registerJs(
'$("body").on("beforeSubmit", "form#w1", function() {

    var form = $(this);

    if (form.find(".has-error").length) {
      return false;
    }

    $.ajax({


      url: "$url",
      type: "post",
      data: form.serialize(),
      success: function(errors) {
        alert("sdfsdf");
        // How to update form with error messages?
      }
    });

    return false;
    });'
);
 ?>

如下更改代码

<?php
$url=Yii::$app->urlManager->createUrl(['work-jobs/create','id'=>$id]);
$this->registerJs(
'$("body").on("beforeSubmit", "form#w1", function() {

    var form = $(this);

    if (form.find(".has-error").length) {
      return false;
    }

    $.ajax({


      url: "$url",
      type: "post",
      data: form.serialize(),
      success: function(errors) {
        alert("sdfsdf");
        // How to update form with error messages?
      }
    });

    return false;
    });'
);
 ?>

构建,对
$.ajax()调用进行以下更改

  • 确保你的URL在引号中。在PHP中插入URL时,忘记引用URL是一个常见的错误。[吉钦]
与此不同,您应该执行以下操作

  • 处理
    submit
    事件,而不是响应
    beforeimit
    事件。这将允许Yii客户端soide验证完成其工作
  • ajax.success
    回调以
    data
    作为参数;不是
    error
    ,而是
    ajax.failure
    错误回调
构建,对
$.ajax()调用进行以下更改

  • 确保你的URL在引号中。在PHP中插入URL时,忘记引用URL是一个常见的错误。[吉钦]
与此不同,您应该执行以下操作

  • 处理
    submit
    事件,而不是响应
    beforeimit
    事件。这将允许Yii客户端soide验证完成其工作
  • ajax.success
    回调以
    data
    作为参数;不是
    error
    ,而是
    ajax.failure
    错误回调
检查此项:检查此项: