mixed-input.vue 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <template>
  2. <div>
  3. <el-input v-model="input1" placeholder="Please input">
  4. <template #prepend>Http://</template>
  5. </el-input>
  6. </div>
  7. <div class="mt-4">
  8. <el-input v-model="input2" placeholder="Please input">
  9. <template #append>.com</template>
  10. </el-input>
  11. </div>
  12. <div class="mt-4">
  13. <el-input v-model="input3" placeholder="Please input" class="input-with-select">
  14. <template #prepend>
  15. <el-select v-model="select" placeholder="Select" style="width: 115px">
  16. <el-option label="Restaurant" value="1" />
  17. <el-option label="Order No." value="2" />
  18. <el-option label="Tel" value="3" />
  19. </el-select>
  20. </template>
  21. <template #append>
  22. <el-button :icon="Search" />
  23. </template>
  24. </el-input>
  25. </div>
  26. <div class="mt-4">
  27. <el-input v-model="input3" placeholder="Please input" class="input-with-select">
  28. <template #prepend>
  29. <el-button :icon="Search" />
  30. </template>
  31. <template #append>
  32. <el-select v-model="select" placeholder="Select" style="width: 115px">
  33. <el-option label="Restaurant" value="1" />
  34. <el-option label="Order No." value="2" />
  35. <el-option label="Tel" value="3" />
  36. </el-select>
  37. </template>
  38. </el-input>
  39. </div>
  40. </template>
  41. <script setup lang="ts">
  42. import { ref } from 'vue'
  43. import { Search } from '@element-plus/icons-vue'
  44. const input1 = ref('')
  45. const input2 = ref('')
  46. const input3 = ref('')
  47. const select = ref('')
  48. </script>
  49. <style>
  50. .input-with-select .el-input-group__prepend {
  51. background-color: var(--el-fill-color-blank);
  52. }
  53. </style>