Javascript 提交表单时与Symfony 3上的JQuery冲突

Javascript 提交表单时与Symfony 3上的JQuery冲突,javascript,php,jquery,forms,symfony,Javascript,Php,Jquery,Forms,Symfony,这是我向社区提出的第一个问题,但我一直在阅读你们的很多帖子,他们帮了我很多忙!:) 我已经学习PHP几个月了,我有一个问题无法解决。尽管我认为我找到了冲突的根源,但我还是感到有点失落 在我添加JQuery之前,一切都正常。 当我添加JQuery:,我的表单会告诉我是否有一个空字段(它会检查必填字段),但按钮不再工作,因此数据永远不会发送并保存到数据库中 我在以前的项目中使用JQuery定制表单,一切都很好 我的表单的代码(由终端上的crud命令生成),它不使用Jquery {{ form_sta

这是我向社区提出的第一个问题,但我一直在阅读你们的很多帖子,他们帮了我很多忙!:)

我已经学习PHP几个月了,我有一个问题无法解决。尽管我认为我找到了冲突的根源,但我还是感到有点失落

在我添加JQuery之前,一切都正常。 当我添加JQuery:,我的表单会告诉我是否有一个空字段(它会检查必填字段),但按钮不再工作,因此数据永远不会发送并保存到数据库中

我在以前的项目中使用JQuery定制表单,一切都很好

我的表单的代码(由终端上的crud命令生成),它不使用Jquery

{{ form_start(form) }}
    {{ form_widget(form) }}
    <input type="submit" value="Create" />
{{ form_end(form) }}
我的表格类型:

namespace WeSoundBundle\Form\Music;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;

class SongType extends AbstractType
{
/**
 * {@inheritdoc}
 */
public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder->add('songTitle')->add('songArtist')->add('album')->add('songPlayer')->add('songLyrics')->add('songPopularity');
}
    /**
 * {@inheritdoc}
 */
public function configureOptions(OptionsResolver $resolver)
{
    $resolver->setDefaults(array(
        'data_class' => 'WeSoundBundle\Entity\Music\Song'
    ));
}

/**
 * {@inheritdoc}
 */
public function getBlockPrefix()
{
    return 'wesoundbundle_music_song';
}
}
谢谢


YD

欢迎使用Stack Overflow,请添加有关控制器以及如何构建表单的信息。一定要阅读。顺便说一句,你知道你包含了两个不同版本的jquery吗?你好!谢谢您的回复和问候!:)我试着只保留他们在你的链接上解释的相关信息。我希望我分享的是正确的,并将帮助您更好地理解。我为newAction和formType添加了控制器部分。没有jquery,一切都可以正常工作,但当我添加它时,它就停止工作了(我在项目中删除了CDN版本,但在我来到这里之前,我尝试了一个版本,两个或零)。这让我抓狂,因为我不明白为什么JQuerry会破坏我的表单,而在以前的项目中它没有破坏表单。在
Design/js/globalscript.js
中有任何东西会破坏表单吗?我以为文件是空的,但忘了我为将来的登录模式添加了一些代码。。。我尝试过不使用JS和JQuery,但没有尝试使用我的自定义JS。。。嗯。。。非常感谢你!现在它工作得很好!:)
/**
 * Creates a new song entity.
 *
 * @Route("/new", name="music_song_new")
 * @Method({"GET", "POST"})
 */
public function newAction(Request $request)
{
    $song = new Song();
    $form = $this->createForm('WeSoundBundle\Form\Music\SongType', $song);
    $form->handleRequest($request);

    if ($form->isSubmitted() && $form->isValid()) {

        $em = $this->getDoctrine()->getManager();
        $playerEditor = $this->get('app.player_editor');
        $song->setSongUrl($playerEditor->getYoutubeId($song->getSongPlayer()));
        $em->persist($song);
        $em->flush();

        return $this->redirectToRoute('music_song_show', array('id' => $song->getId()));
    }

    return $this->render('music/song/new.html.twig', array(
        'song' => $song,
        'form' => $form->createView(),
    ));
}
namespace WeSoundBundle\Form\Music;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;

class SongType extends AbstractType
{
/**
 * {@inheritdoc}
 */
public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder->add('songTitle')->add('songArtist')->add('album')->add('songPlayer')->add('songLyrics')->add('songPopularity');
}
    /**
 * {@inheritdoc}
 */
public function configureOptions(OptionsResolver $resolver)
{
    $resolver->setDefaults(array(
        'data_class' => 'WeSoundBundle\Entity\Music\Song'
    ));
}

/**
 * {@inheritdoc}
 */
public function getBlockPrefix()
{
    return 'wesoundbundle_music_song';
}
}