Yii2:如何停止 yii2 为表单中的每个字段生成内置 ID

Yii2: how to stop inbuilt id generation by yii2 for each field in form

当我添加表单以查看并将参数指定为

<?= $form->field($model, 'form_name', ['options' => ['id' => 'formName', 'name' => 'formName']])->textInput(); ?>

但是,当我 运行 在浏览器中检查查看页面源代码时,它会显示

<input type="text" id="submitform-form_name" class="form-control" name="SubmitForm[form_name]">

这打扰了我的 javascript 要求现场输入。如何阻止yii2生成自己的id???

您正在将选项传递给 ActiveField。如果你想覆盖 idname 属性,将它们传递到 textInput() 选项中,如下所示:

<?= $form->field($model, 'form_name')->textInput(['id' => 'formName', 'name' => 'formName']) ?>

生成的 html 输出将是:

<input type="text" name="formName" class="form-control" id="formName">

请注意,此属性的客户端验证之后将停止工作,并且不会大量分配该属性。